Transcrições
1. Introdução ao curso: Olá a
todos, todos, e bem-vindos às pontuações sobre fazer um sistema de menu para o seu jogo de cartas. A pontuação é trazida a você pelo meu bom amigo. O nome dele é Sander Kiss. Ele é instrutor e empreendedor, e compartilha minha paixão em jogos de cartas. E meu nome é Vladimir Lee Marchenko. Eu sou um desenvolvedor unidade com cerca de três anos de experiência profissional, agora fazendo principalmente para os jogos e apenas recentemente fazendo jogos de cartas comerciais também. Um tempo atrás, ser já feito um curso de jogo de cartas de negociação juntos, e foi bastante bem sucedido. Nosso primeiro coro cobriu os tópicos da mecânica de batalha em jogos de cartas. Então, fazendo essa batalha jogo de cartas de negociação quando você começa a jogar suas criaturas e jogar seus
feitiços . Então, tudo isso foi coberto em nosso primeiro curso, e o segundo curso é dedicado inteiramente a fazer menus para um jogo de cartas comerciais. Então, neste curso vou mostrar-lhe como gerenciar a coleção de guardas que você tem em seu jogo, como filtrar esta coleção por diferentes parâmetros para que você possa selecionar as cartas com um determinado homem, accosts os cartões que contêm certas palavras-chave, os guardas que pertenciam a determinado tipo de caractere e assim por diante e assim força. Então, todos esses recursos, eles serão incluídos em nosso sistema de menu. Também nas pontuações irá cobrir a construção de decks personalizados a partir das cartas que você tem em sua coleção, e os jogadores vão começar a salvar seus decks e pré-fazer seus decks para que, quando eles querem entrar no modo de jogo, eles recebem para selecionar um dos decks que eles criaram anteriormente. Então esse é outro desafio e outra coisa que discutirá neste curso. E, claro, a coisa mais emocionante nos jogos de cartas comerciais é comprar novas cartas, talvez novos pacotes de guardas, abri-los e ver que tipo de guardas incríveis você agora tem para sua coleção. Então também vamos fazer uma loja muito simples e uma tela de abertura traseira para mostrar às pessoas que tipo de cartões eles têm e para tornar sua coleção de cartões mais diversificada. E também o material que fazemos neste curso não é apenas menus isolados. Assim, juntamente com o homem usar parte do curso, você também tem uma cena de batalha totalmente funcional que temos montado nas pontuações
anteriores que você possa fazer um baralho personalizado em alguns cartões personalizados para o projeto e instantaneamente tentar eles fora em batalha. Há algumas coisas que este curso não inclui, e sei que as pessoas as solicitaram. Estou trabalhando neles, e por enquanto, eles não estão prontos. Então este curso ele se concentra apenas nos menus, por isso ainda não tem o aspecto multiplayer para este jogo. Então, o projeto que vai rever e que vai fazer neste curso ainda é single player. Você pode tratar a cena de batalha que você entra neste projeto, como uma batalha de chefe, então você pode pré-configurar um deck para o seu adversário, e você pode criar um deck personalizado para você e lutar com o mesmo chefe tipo de e mais. Mas ele explica todos os conceitos principais de construção de menus de jogo de cartas de negociação, por isso ainda é um projeto de jogador único, mas agora ele possui um sistema bastante avançado fora de menus e gerenciar sua coleção de cartas. A segunda limitação deste curso é que ele é feito para estudantes mais avançados para pessoas que têm alguma experiência anterior com unidade e C afiado porque junto com as técnicas
básicas estará usando algumas coisas mais avançadas, como link e fazer entre o motor de limpeza. Mas, na
verdade, depende da pessoa. Eu vi pessoas que eram novatos completos que escolheram o primeiro curso, e eles criaram alguns projetos incríveis e
únicos. Então, se você tem moda para jogos de cartas de negociação do que qualquer coisa é possível, Eu encorajo você a pegar este curso e você aprender muito ao longo do caminho. Muito obrigado por assistir a esta introdução, e estamos entusiasmados para vê-lo nas próximas palestras das partituras.
2. 201 - Introdução à seção 2: Olá, todo mundo. E obrigado por escolher assistir a este curso nesta introdução para a Seção Dois Primeiros. Eu queria dizer algumas palavras sobre este curso em geral enquanto eu estava fazendo este curso, eu estava salvando os projetos em que eu estava trabalhando ocasionalmente. Então, é
claro, você pode baixar os projetos em diferentes estados de conclusão das pontuações. Mas minha sugestão para os alunos em todos os meus cursos é sempre baixar o projeto final primeiro, o projeto final é sempre o mais recente, o mais livre de erros. E a minha sugestão para este curso não é diferente. Se você quiser seguir com este curso, IRA ordena que você baixe o projeto final. Ele terá a palavra final no título. Então faça o download disso e assista aos vídeos do curso e trate este curso mais como uma forma de montar algumas coisas em unidade, como o código funciona e assim por diante e assim por diante. Portanto, não há necessidade de recriar todo o Y e toda a estrutura hierárquica nesta cena quando você está seguindo junto com o curso. Outra coisa que eu queria que você soubesse sobre o curso e meus cursos em geral. Se você tiver alguma dúvida,
por favor, pergunte a eles na seção Q e A Eu trato você e Avery seriamente. E geralmente respondo perguntas dentro de 24 horas, às vezes até mais rápido do que isso. Então, se você tiver alguma dúvida, sugestão, idéias
interessantes, basta fazer a pergunta no Q e A e eu entrarei em contato com você e tentarei ajudá-lo com suas idéias. E nesta seção, a primeira seção educacional fora do nosso curso vai falar principalmente sobre cartões. Vamos falar sobre armazenar cartões em nosso projeto para que esses objetos em nossa pasta S. É, eles são realmente cartões, e eu posso trocá-los. Eles têm imagens diferentes aqui, e esses campos são todos os combustíveis necessários para descrever uma placa neste projeto, esses arquivos ou ativos em nossa pasta Essence chamada Script Herbal Object Assets, e vamos falar sobre o que eles fazem, como você pode fazer estes o que eles significam em profundidade nas próximas palestras nesta seção. Outro objetivo fora desta seção é verificar a coleção de cartões de script que um vamos manter todas as informações sobre nossos cartões em determinada ordem será capaz de classificar cartões, cartões filtro e assim por diante e assim por diante. É muito útil script que é usado em todo o aplicativo para diferentes fins. E, finalmente, na última palestra fora, esta seção fará este menu simples. Será feito com unidade. Você eu e ele terá todos os itens de menu que têm, mesmo na versão final fora da nossa aplicação. Então, este botão de jogo vai nos levar para o modo de jogo será capaz de selecionar o baralho e jogar contra a IA ou contra nós mesmos. Este item do menu da coleção é o mais complexo. Ele nos levará para a navegação de coleções e será capaz de construir um deck se entrarmos nesta coleção. Muitos itens e este próximo item de loja é provavelmente o mais simples. Um será capaz de comprar pacotes e boosters abertos e adicionar novos cards em nossa coleção , e este item do questionário vai simplesmente sair do aplicativo. Gostaria de agradecer por assistir a este curso, e estou ansioso para vê-lo na próxima palestra
3. 202 - Como armazenar cartões como recursos de ScriptableObject Parte 1: Olá, todo mundo. E muito obrigado por assistir ao discurso sobre fazer menus de jogos de cartas. E antes de começarmos a desenvolver o aplicativo e realmente fazer algo, eu queria falar sobre como ser tratado com cartões neste projeto. Como armazenamos essas informações sobre cartões? E essencialmente, se você pensar sobre este cartão é apenas uma certa coleção de dados sobre suas estatísticas, dados sobre suas habilidades e também datado ambas as imagens que ele usou e as
descrições de texto e tudo isso. Então, neste projeto, nós os armazenamos como os chamados objetos de ervas de script. Então, se eu for para ativos a raiz de nossa pasta S, nossos cartões, eles são armazenados neste recurso é pasta e unidade trata tudo o que está sob o recurso é pasta como coisas que você pode acessar em tempo de execução então mais tarde vai realmente dizer recurso é carregar todos off tipo guarda ativo, e vamos obter todos os ativos de cartão do nosso projeto. Então, se eu ir para o meu recurso dobrado há uma subpasta s ativos O. Temos dois tipos de ativos em nosso projeto. Um deles é um ativo de personagem que define a classe de personagem, por exemplo, em Harsh Stone, existem nove classes de caracteres, e neste projeto eu só fiz duas delas. Mas você pode estender a quantidade de classes de personagens e adicionar o seu próprio, e então nós teremos cartões. Estão divididos em duas categorias e duas pastas aqui, criaturas e feitiços. Então vamos abrir a pasta de criaturas. E, como pode ver, cada cartão é um objeto separado em nossa pasta Ativos, e podemos criá-los clicando com o botão direito Eu posso ir para criar, e aqui eu posso selecionar cartão ativo. Então, se eu pressionar no ativo do cartão, vamos fazer isso. Ele irá criar um novo objeto como este. Ele será chamado New Card Asset. Eu posso dar-lhe um nome personalizado algo algo pressione Enter e, em seguida, eu começar a editar este guarda e este cartão é adicionado automaticamente ao meu projeto. Ele será carregado através de recurso é carregar tudo Então acabamos de criar um novo cartão. Eu não vou precisar deste cartão, por isso de excluído por enquanto. E vamos dar uma olhada em alguns dos cartões existentes em nosso projeto e entender como ele funciona mais rápido, vamos dar uma olhada no que temos aqui no inspetor lado a lado com o script que define nosso cartão Essent. Então eu vou abrir meu modelo de desenvolvimento. E aqui está uma classe que define o cartão em nosso projeto. Temos vários campos e todos os campos que temos aqui. Eles são refletidos aqui. Primeiro, vamos começar do início,
o ativo de cartão de ouro classes e é um objeto herbal script. Então, tornando o nosso objeto herbal script cartão Ele nos permite criar esses guardas dentro nossa pasta de ativos, mas direito, clicando e selecionando ativo cartão. E para fazer isso, a primeira coisa que você precisa fazer faz com que sua classe seja objeto das escrituras. E a segunda coisa que você tem que escrever outra classe personalizada para integrá-la em seu
editor de unidade . Felizmente, esse copo é muito curto. Então, se formos para a próxima classe que temos aqui, é cartão de ouro, unidade, integração e esta classe é suposto sentar-se dentro da pasta do editor. Então, se eu for para a unidade, vamos para os nossos scripts de ativos. Então, onde esses scripts que lidam com ativos de cartão estão S. O. São scripts. Agente de guarda. Lá está o nosso recurso de cartão, e ao lado dele temos uma pasta de editores. Então estes são os scripts que cuidam da unidade, integração para que clique com o botão direito do mouse e obtemos essa opção no menu, criar ativos de guarda. E há outro script que é um inspetor personalizado. Então, se fizéssemos isso sem o costume, inspetor, nosso inspetor de ativos de cartão ficaria muito mesclado, e não seria tão conveniente editar tudo. Então, nesta palestra, eu acho que vamos discutir esse processo fora, criando script, ativos de objetos de
ervas no Unity e em nossa próxima palestra vamos dar uma olhada no editor que eu uso para ativos de cartão. Então, um dos scripts cartão ativo, unidade, integração, este. Como você pode ver, é muito curto se voltarmos a desenvolver mono. Parece com isto. Então ele está usando o editor Unity. É unidade cartão de ouro classe estética, integração. O nome não importa muito. Nós temos um atributo. Então essas coisas entre parênteses rectos, são atributos. Este é usado no Unity Editor. Ele é chamado item menu, e nós especificar onde em nosso menu clique direito terá esta opção fora a criação de ativos de cartão . Então nós colocamos em ativos, criar ativo de guarda. Nós temos um método estático público, criar seu objeto escritural, e ele apenas chama um método em algum outro utilitário de objeto escritural classe para. E este é apenas um pedaço de código que eu encontrei na Internet que nos ajuda a criar esses ativos de objetos de ervas de
script, e ele cuida do processo. Então, se olharmos para ele, é também uma classe muito simples, muito curta que contém Onley várias linhas de código, e ele vai criar um ativo fora do nosso tipo t. Então este método criar ativo é um método genérico e criará o ativo na pasta onde estamos atualmente no editor. Então, fazendo tudo isso como manipulações inteligentes, ele nos permite criar esses ativos de objetos de ervas script em nossa pasta S. É e na verdade é realmente grande coisa para nós. Assim, ele nos permite armazenar todos os dados sobre nossos cartões e adicioná-los facilmente. Adicionar novos cartões foram removidos cartões, por isso é muito conveniente. E agora eu vou voltar para a nossa classe de ativos cartão e também passar para recursos ativos é como oh ativos. Vamos até as criaturas e selecionar o primeiro carrinho para que possamos ver nosso
inspetor de ativos de guarda aqui. E também vamos dar uma olhada no lado do vidro. Então, a primeira coisa que nosso cartão, como ele
é, é um objeto herbal script, e segundo, podemos fazê-lo implementar qualquer número fora de interfaces, e neste caso, queremos fazer o nosso ativos de cartão comparáveis. Portanto, queremos ser capazes de comparar um ácido de cartão com o outro porque em nosso projeto vai classificar nossos ativos de cartão e a classificação vai acontecer de acordo com seus custos de mana. E o segundo critério fora de classificação será a sua ordem alfabética, modo que quando você selecionar as cartas que têm um certo homem um custo se todos eles têm um homem accosts off três, por exemplo, cartões
individuais ser ordenado em ordem alfabética, e é realmente conveniente
4. 203 - Como armazenar cartões como recursos de ScriptableObject Parte 2: Todos esses campos públicos que temos, eles se traduzem muito bem nas coisas que temos aqui no Inspetor. Então nós tivemos, er, informações
gerais. Lá está ele. Temos um ativo de caráter de ativo de caráter público para que ele defina a qual classe este cartão pertence? Se ele está definido como nenhum ou não como ele está agora. Isso significa que este cartão é neutro se fizermos uma alteração e vai arrastar algum ativo personagem de nossos projetos para este campo que este cartão pertencerá a determinada classe de caracteres. Em seguida, temos esta próxima vista que é descrição cadeia pública. E se tivéssemos apenas a sua descrição de string pública sem esta área de texto de atributo, será apenas uma cadeia de linha simples. E como queremos ser capazes de ver melhor e editá-lo mais fácil e mais conveniente, adicionamos esta área de texto de atributo. Então nós temos dois raios de imposto de linha e esses números dois e três lá o número mínimo de vôo. Então, atualmente, temos apenas duas linhas na área de texto e ele vai começar a digitar. E se a descrição for muito longa, então ela expandirá até três linhas. Em seguida, temos uma área de texto semelhante para tags e as tags lá, apenas alguns critérios adicionados que aparecerão em busca em nossa coleção. Então, por exemplo, aqui escrevi uma tag de exemplo chamada Death Rattle. Embora este recurso realmente não tem chocalho morte e algo semelhante à morte direita em pedra dura. Mas eu adicionei esta etiqueta, então se você vai procurar pelo chocalho da morte em nossa busca de coleção, você vai conseguir que este cartão apareça. Então, em comparação com o projeto anterior do meu curso anterior, adicionei um novo recurso aos cartões, que é raridade. Então, se temos a coleção e se queremos abrir a raridade costas, realmente
faz sentido e colocar bem com o conceito fora do jogo. Assim, os cartões lá separados por raridade, e eles podem ser um básico, comum, raro épico ou lendário, muito semelhante à pedra dura. E eu sou muitas vezes inspirado por este jogo porque eu acho que é simplesmente incrível. Temos isso em opções de raridade
pública sentadas aqui no topo. Então, há vários ajudantes de cabelo Denham dentro do nosso arquivo de classe de ativos de cartão e eles estarão acessíveis durante todo o projeto porque eles têm nós torná-los públicos . Há também este outro em Eu estou segmentando opções que será todo o caminho para baixo na
parte inferior fora da classe de nosso cartão s. E também temos um enema que define o tipo de cartão. E neste projeto, não
temos armas. Não temos segredos. Então, estamos mantendo isso muito básico. E temos apenas criaturas e feitiços. E em seguida, vamos rever todos os próximos campos em nosso ativo de cartão. Próximo campo é a imagem pública do cartão sprite. E em vez de ter apenas este campo, é como imagem de cartão e ao lado terá apenas o nome fora do Sprite. Então você não pode realmente ver isso. Seria realmente útil se você pudesse ver o sprite que você está usando no cartão. Porque você olha instantaneamente lembrar e você vai ter uma idéia fora. Qual guarda você está editando agora e quais propriedades você quer que este carro tenha? Então eu estou usando essa coisa que é chamada de pré-visualização Sprite. Há esse script em algum lugar na minha pasta que habilita esse atributo personalizado, e isso torna esse sprite, não apenas vazio, em branco como a imagem do cartão e nada mais. Mas ele adiciona esta pequena visualização abaixo da imagem para que você possa ver qual sprite você está usando agora para este cartão, e eu acho que é muito necessário. Eu não vou parar nesta pré-visualização Sprite pensando por agora porque eles não têm estrada isso. Encontrei-o algures na Internet, e estou a usá-lo. Acho que funciona muito bem em nosso projeto. Em seguida, temos custos de mana inteiros públicos, então cada guarda terá seu próprio custo de mana onde jogamos, e será muito importante na coleta, então vamos classificar as cartas. Mas lá, homem accosts e também você será capaz de filtrar a coleção e mostrar em Lee os guardas que têm um certo homem um custo. Este próximo campo também é muito interessante. É um card de token booleano público, então há alguns cards que você pode não querer mostrá-los na coleção, e você pode não querer deixar jogadores neste card em seu deck, por exemplo, como em pedra dura. Se fores em segundo lugar, recebes um cartão de moedas. Portanto, há uma carta coreana no jogo, mas você não pode ver esta carta, e você não pode adicionar esta carta ao seu deck quando estiver construindo um deck. Então, para este caso, eu fiz este ouro que é chamado de cartão token. Então, se você não quer que este guarda seja destaque em sua coleção e se você não quiser que os jogadores sejam capazes de adicionar o card aos seus decks, então você basta marcar esta marca de seleção e dizer isso como verdadeiro, e então eles não poderão adicionar para o seu convés ou assento em sua coleção. A próxima linha de sobreposição limita essa carta no baralho, então geralmente há um limite para o número da mesma carta que você pode usar no baralho. E em nosso projeto, há um lugar central onde estabelecemos esse limite. Ela está definida atualmente como, então você só pode ter duas instâncias fora da mesma guarda, por exemplo, esta no deck e se você quiser torná-la diferente, então atualmente definido como menos um para que não faça nenhum sentido. Se você quiser tornar esse limite diferente, por exemplo, como na Zona Dura, você só pode ter uma instância de um card lendário no deck que você disse que este limite de
sobreposição a um. Ou talvez queiras ter algumas das cartas. Você quer ter três instâncias fora deles no convés do que você disse isso para três. Então este número serve a este propósito aqui sobrepõe os limites deste card e baralho. Então eu fiz estes, como uma espécie de espaços e entra aqui para tornar este próximo campo tipos públicos de guardas tipo de cartão visível para que tipos de cartas é o nosso Inam que define se é criatura ou um feitiço. E ele desempenha um papel importante aqui em nosso script de ativos de card porque também mudará a aparência do
editor do nosso card, de modo que atualmente é uma criatura que podemos mudá-lo para um feitiço, e feitiços são muito mais simples que criaturas. Se estiver configurado para soletrar, então todo o nosso jogo, todo o
nosso motor irá tratar este card como um feitiço. Vai parecer um feitiço. Vai jogar como um feitiço, e, uh, todo
o comportamento da carta vai mudar quatro feitiços. Temos vários campos que estão listados aqui. Script de soletrar, nome e ah, eu vou voltar para mono desenvolvido para mostrar isso a você. Então temos a informação do feitiço Chapeleiro. Nós temos o nome do script de feitiço aqui, e quatro feitiços terão que montar scripts personalizados para definir o que o soletrado nós. Então, ou pode causar dano ou pode, Hugh. Ou talvez possa dar um bônus a um homem, como o cartão coreano. Então Spells terá scripts personalizados escritos para eles e para anexar esses scripts personalizados para nossos carros terá que listar seus nomes aqui neste campo de nome de faixa de feitiços. Também temos essa quantidade especial de feitiço. Por exemplo, você pode ter um cartão de moeda que lhe dá um bônus por um turno. Ou você pode ter outro cartão que vai lhe dar contratar homem um bônus por um turno. Por exemplo, em pedra dura, há um guarda de sonhos que lhe dá dois homens de bônus por um turno. Então, apenas mudando essa quantidade de feitiço, você não tem que aparecer dentro de seu script soletrado. Você pode simplesmente controlar a quantidade fora, homem, um bônus ou quantidade de dano com esta quantidade especial de mágica e também os alvos. Então, alguns dos feitiços não têm nenhum alvo. Por exemplo, um feitiço que diz Fazer cinco de dano a todos os adversários. Criaturas. É um feitiço poderoso, e quando você jogou, você apenas arrastá-lo para o campo de batalha e ele apenas causa. É um dano. Ele apenas joga seus efeitos, então você não precisa selecionar nenhum alvo específico no campo de batalha. Você mostra o feitiço, e ele faz o trabalho. E alguns feitiços dizem algo como “Deal Seis”. Dano a um alvo ou causa um ponto de dano a uma criatura do oponente. E para esses feitiços, onde você pode realmente selecionar o alvo, você pode selecionar o grupo de alvos disponíveis para o feitiço aqui. Pode parecer um pouco complicado, mas as mágicas podem ter como alvo criaturas antigas, então isso limita o grupo de alvos com criaturas antigas. Você não pode mais escolher seu personagem e seu personagem inimigo assim criaturas Onley. Você pode escolher criaturas inimigas, ou você pode apontar para suas criaturas personagens antigos para que você possa basicamente grande qualquer alvo para seus personagens inimigos de feitiço para que você possa escolher o seu herói inimigo ou suas criaturas, ou você pode apontar seu personagens para si mesmo ou suas criaturas. Estes são todos os grupos de metas disponíveis em nosso projeto. E se escolhermos a criatura aqui, isso é um pouco mais complicado para as criaturas. Temos outras propriedades, como, vamos voltar ao nosso projeto Max Health. E aqui podemos ver não como inteiro simples, mas como este tipo de intervalo de seletor tão atualmente definido para quatro. E ao controlar este controle deslizante de alcance, podemos facilmente alterar o valor. Oregon, basta digitar aqui. Então temos nossa máxima de vida, a vida inicial que nossa criatura usa quando entra na batalha. Temos o ataque dele e pode mudar de 1 30, caso tenhamos os nossos ataques por um turno. E alterando esse valor de ataques por um turno, você pode fazer sua mediana ter algo semelhante ao efeito de fúria do vento em sua pedra quando um rápido pode ter que uma declaração de imposto ou talvez três ou quatro ataques por turno. Portanto, pode não ser apropriado para alguns jogos, mas pode ser perfeitamente bom para o jogo que você está planejando fazer para que você possa selecionar o número de vezes que sua criatura pode atacar o retorno. Você também pode fazer suas criaturas ser capaz de carregar para que você joga e ele pode atacar instantaneamente . Ou você pode fazê-los provocar. Então você faz isso para que outras criaturas, seus oponentes, criaturas, eles têm que atacar esta criatura primeiro. E isso é praticamente tudo o que precisamos saber para fazer uma criatura no jogo ou um feitiço no jogo. Então este conjunto de dados, define
tudo o que precisamos saber sobre o nosso cartão, a fim de torná-lo e mostrá-lo aos seus jogadores e saber quais propriedades o cartão tem? E eu quase esqueci essas criaturas que eles podem ter seus próprios scripts que podem dar-lhes certas habilidades, por exemplo, scripts de
criaturas que eles podem dar suas criaturas grito de batalha, então o fato de que ele causa quando é entrar no campo de batalha, ele também pode dar às suas criaturas chocalho morte algo que acontece quando sua criatura morre . Ou você pode fazer com que seus scripts de criaturas executem alguns efeitos loucos. Quando certos eventos acontecem no jogo, por exemplo, esta criatura tem o fato de que é chamado de dono da mordida. Ela causará dano ao dono desta criatura no final do turno. Portanto, este recurso, é bastante dominado por suas estatísticas. Então é uma criatura 44, e custa apenas para Mana. Uma vez que é um pouco dominado, você tem que ter algum tipo de contratempo em ter esta criatura. Assim, no final de cada turno, ele vai morder seu jogador para dois pontos de vida. E eu acho que este vai ser o fim para esta palestra. Então, discutimos tudo o que está relacionado ao nosso ativo de cartão e armazenar esses dados em nossa próxima palestra discutirá a classificação de nossos ativos de cartão. Então temos este ativo cartão também derivado de I interface comparável foram implementando esta interface. Ele discutirá isso, e também daremos uma breve olhada no inspetor da alfândega para nosso ativo de cartão. E como podemos esconder esses campos ou mostrar esses campos no inspetor quando
mudamos de criatura para feitiço e realmente campos, eles estão sempre lá. Então, mesmo quando selecionamos a criatura, ela ainda tem o nome da tira de feitiço. Ele ainda tem a quantidade do script de feitiço. Eles simplesmente não importam se este card é uma criatura, é por
isso que eles estão escondidos. E se formos ao inspetor. Você pode realmente mudar este inspetor para o modo de depuração para que eu possa clicar com o botão direito do mouse e alterá-lo do normal para depuração. E você verá isso. Então ainda temos o nosso script de mágica de quantidade de criatura especial, nome, quantidade de feitiço
especial. Temos nossos alvos de feitiços. Então nossos ativos de cartão, eles têm todos esses dados armazenados neles e podemos mostrá-los ou ocultá-los usando um inspetor
personalizado. Gostaria de agradecer a vocês por assistirem ao curso e completaremos nossa discussão de forma
desprevenida na próxima palestra.
5. 204 - Curso CardCollection Parte 1: Olá, todos. E obrigado por assistir a este curso. Você já sabe tudo sobre ativos de cartão e essa classe que é chamada de
Coleção de Cartões . Vimos isso na cena do crime. E se eu minimizar Monta desenvolvido novamente, ele está ligado. Faça este objeto guarda e caracteres ou caracteres por nome. Então nós temos a coleção de cartões e recursos de personagens pelo nome, e nós devemos ter uma instância fora deste vidro em algum lugar, pelo
menos em nosso menu visto. Então eu fiz isso. E agora, se voltarmos ao desenvolvimento mono, vamos verificar o que esta classe tem e o que ela faz. Não é muito tempo em tudo sobre 100 linhas algo, e poderia ter sido mais curto se eu removi alguns dos comentários. Ele começa com um número padrão inteiro público fora guardas básicos. Então, assim como em qualquer jogo de cartas,
se você iniciar o jogo e você não tem nenhum cartão , não vai ser divertido. Então, em cada jogo de cartas, você deve ter algum tipo de guardas básicos no início do jogo e e nós estamos apenas definindo o número de guardas que têm o ET raro fora básico para ser igual a três. Então você lança o jogo pela primeira vez, e você tem três fora de cada um de seus cartões básicos. Mas você pode editar esse número sozinho, e você pode fazer o que quiser ou se quiser. Você pode até mesmo tornar o número padrão de cartão básico zero. Exclua as cartas básicas inteiramente do seu projeto e faça com que seus jogadores não tenham cartas. No início do jogo. A escolha é inteiramente sua. Então temos este próximo campo coleções de cartões estáticos públicos. Portanto, é uma variável fora do mesmo tipo, e é estática. Instância. E aqui em uma semana, dizemos exemplo, é igual a isso. Então este copo é chamado de Singleton preguiçoso. E fazemos isso porque só temos uma instância deste vidro de cada vez na cena do crime. Portanto, não queremos criar várias coleções de cartas. Teremos sempre apenas um. E para simplificar o acesso a este vidro de outras classes será capaz de apenas dizer
coleção de cartões , instância
ponto e chegar a este vidro. Então é muito conveniente. Em seguida, temos vários dicionários. O primeiro dicionário está fora do tipo string e ativos de cartão, então teremos nossas chaves de string e valores de ativos de guarda. É ouro cartões antigos dicionário, e eu acho que vai incluir os cartões neste dicionário por seus nomes. Então, em Old Cars Dictionary, você será capaz de obter um cartão com um certo nome. E, em seguida, também temos outro dicionário que tem chaves off tipo cartão ativo. E ele tem valores do tipo inteiro que é chamado quantidade fora de cada cartão. Assim, neste dicionário vai realmente manter o controle fora das cartas que o nosso jogador tem atualmente . Então, para cada carta, ele terá um certo número como ele tem três deste cartão para desta guarda e assim por diante e assim por diante. Então esta quantidade de dicionário de cada carta vai manter o controle disso. E nós temos que inicializar esses dicionários com algo para que você possa apenas colocar dois pontos
no final aqui. Então você está dizendo que você dicionário e ambos são inicializados com dicionários vazios fora do seu tipo. Em seguida, temos uma matriz de ativos de cartão privado que é chamado de todos os cartões matriz, e estamos usando-o bem no início do nosso método acordado. Dizemos matriz de cartões antigos é igual a dois recurso é carregar velho. Como eu disse na palestra BDS e carga. Tudo é um método genérico, então você pode passar um tipo e estamos carregando todos os ativos do cartão. E como um caminho para onde dentro de nossa pasta de ativos seria como procurar por ativos de guarda estavam passando em cadeia vazia. Várias buscam em todos os lugares todos os ativos de cartão que temos em nosso projeto. Então, neste momento, este vidro já encontrou todos os ativos de cartão que você configurou no projeto. Em seguida, iterado sobre esta matriz fora de todos os ativos do cartão e dizemos para cada cartão, s etc Um em cartões antigos ary. Se este cartão não foi adicionado ao nosso dicionário de guardas antigos, então estamos adicionando este cartão no dicionário. Então dizemos cartões antigos, dicionário adicionar e este método leva dois argumentos. O 1º 1 é uma corda, então uma chave na qual é o nome do ácido do nosso cartão. Então dizemos, veja um nome de ponto e é o nome do nosso objeto oval de script. E o segundo argumento são nossos ativos de cartão. Então dizemos, ver um e, em seguida, acordada. Nós também queremos carregar a quantidade fora de nossos cartões e neste projeto irá armazená-los em preparativos
para jogadores. Então, vamos encontrar uma maneira de corrigir esta informação sobre a quantidade de cada card que o nosso jogador tem
nos preparativos para jogadores. Mas eu queria olhar para este método um pouco mais tarde. Se você olhar para o topo deste vidro, estavam usando algo interessante e você nomeia espaço. Bem, para alguns
, pode ser novo. Para alguns, pode não ser novo. Eu não usei muito Link antes de fazer este projeto. Então, foi novo e interessante para mim, estavam usando o sistema de ponto Link, e usamos link para filtrar a coleção fora de nossos cartões de muitas maneiras diferentes. E eu queria rolar todo o caminho até o final desta classe e mostrar-lhe o método que é usado na maioria das vezes o e é responsável por obter subconjuntos de toda a nossa
coleção guarda . Então, senão crescer um pouco mais baixo e aqui no final fora da nossa classe, temos o método obter cartões. É, como diz o comentário, o método mais geral que usará vários filtros. Como você pode ver o método retorna uma lista off guard ativo. Então é uma certa coleção fora do nosso cartão s, é e ele vai devolver todos os ativos do cartão que satisfazem todos esses diferentes criterias que temos aqui. Então vamos passar por eles bem rápido. Então o 1º 1 está frio mostrando cartões que Blair não possui. E se tivermos algum cartão que não temos, então a quantidade deste cartão na nossa coleção é igual a zero, temos uma escolha. Ou queremos mostrar a estes guardas ou não queremos mostrar estas cartas. E em Hearthstone, isso é um pouco semelhante ao modo de fabricação. Assim, no modo de fabricação, você é capaz de ver até mesmo as cartas que você não possui e você é capaz de fabricá-las. Então, para este propósito, temos este Booleano aqui ou estavam mostrando esses guardas ou nós
não estamos mostrando essas cartas. Então nós também temos este barras que é chamado incluir todas as raridades, que é praticamente o que ele diz. Então podemos incluir guardas fora de uma certa raridade ou podemos incluir apenas todos eles. Nós também temos um booleano incluir todos os caracteres,
Então, se queremos incluir todos os caracteres. Mostraremos as cartas neutras e as cartas que pertencem a qualquer um dos nossos personagens. Se este Booleano é definido como false do que irá mostrar as cartas neutras ou irá mostrar em Lee as cartas que pertencem a um determinado personagem Nextel rolar um pouco mais aqui, então temos uma opção para especificar a raridade de cartas que gostaríamos de obter. Então, se incluir, todas as raridades é definido como false,
em seguida, ele vai tirar este valor fora da raridade, e ele vai retornar em Lee as cartas que têm uma certa veridade atualmente definido como básico. Mas você pode mudar isso, e você pode selecionar cartas lendárias ou cartas raras ou qualquer outro conjunto de cartas. Em seguida, temos um caráter ativos. Então, se este brilhante incluir fora todos os caracteres é definido como falso,
em seguida, se você tem este ativo igual a saber, você vai obter todas as cartas neutras. Se você tiver esse ativo definido como um dos ativos de caracteres existentes em seu projeto, então você receberá apenas os cartões que pertencem a esse personagem. Em seguida, sente ter a palavra-chave de força, e é uma string que você digita na barra de pesquisa na parte inferior da guia de coleção ou tela de coleção. É apenas uma questão de como você o chama, você
possa digitar uma palavra nesse campo de entrada na barra de pesquisa, e ele mostrará em Lee os cartões que apresentam essa palavra, seja em seu nome ou em suas tags. Ou talvez na descrição deles. Em seguida, temos um custo de mana inteiro, o que é muito importante para filtrar nossos cartões. Então, se o homem accosts terá seu valor padrão menos um, que não faz nenhum sentido, então ele incluirá as cartas com todos os custos de mana. E, finalmente, temos um booleano incluir cartões token, e falamos sobre os cartões token na palestra anterior. Por exemplo, segundo cartão é um cartão token, então você não quer permitir que seus jogadores apresentem este card no baralho, ou você não quer permitir que eles vejam este card em sua coleção. Então eu acho que neste projeto, eu não estou usando isso em tudo, e este valor off include token cards é sempre definido como false. Mas se você quiser mostrar os cartões de token por algum motivo, também é bom. E então nós temos algum código de link aqui e na verdade estávamos apenas usando o mesmo operador
que está frio Onde? Então primeiro pegamos todas as cartas e não sei se é necessário. Mas dizemos var para que ele irá determinar o tipo por si só cartões, que será uma coleção fora de nossos carros. Então diz que eu inumerável off tipo cartão ativo. Estamos selecionando a partir da nossa matriz de cartões antigos e dizemos a partir de cartões de seleção. Então nós estamos apenas selecionando todas as cartas que estão lá e colocando-as em nossa coleção que é chamado de cartas. E então estamos gradualmente aplicando todos esses filtros que listamos aqui. Então, se não estamos mostrando cartas que o jogador não possui, temos que excluí-las. Então excluímos todos os cartões que têm a quantidade fora de zero em nossa coleção. Então dizemos que cartas são iguais a guardas. Comece por onde, e selecionamos apenas os guardas. Então aqui há um pouco dessa sintaxe estranha com uma seta e tudo mais. Eu sugiro que se você não está familiarizado com isso, você deve procurá-lo em um livro de C afiado ou em algum lugar on-line. Então, selecionamos apenas as cartas que satisfazem esta quantidade critério de cada guarda, que é um dicionário. E como é um dicionário, podemos usar este cartão como uma chave para o dicionário. Então usamos uma espécie de matriz como Syntex. Mas nesses colchetes não usamos um índice. Em vez disso, usamos nosso cartão. Então dizemos quantidade de cada cartão. Nestes colchetes temos o mesmo cartão é maior que zero. Então, selecionamos Onley as cartas que nosso personagem realmente tem em seguida. Se não estamos incluindo cartões de token, que acontece o tempo todo neste projeto, estamos dizendo que queremos deixar Onley aqueles cartões que têm a bóia e o cartão de token definidos para quedas. Então, cada um destes, se declarações e destes cartões, declarações
iguais, torna esta coleção fora guardas mais estreita e mais específica. Então, com a próxima declaração
if, se não estamos incluindo todas as raridades, então queremos incluir apenas um fora de nossas raridades, então selecionamos apenas os guardas que têm uma certa raridade que nós especificamos aqui como um fora do nosso método. Se não incluirmos todos os personagens. Em seguida, queremos obter em Lee os cartões que têm ativo de caráter definido para o valor que
temos especificado nos parâmetros deste método. Em seguida, é um pouco mais interessante e não tão trivial. Então, se temos palavra-chave e não é igual a não, não
é igual a uma string vazia. Em seguida, estamos selecionando todos os cartões que contêm esta palavra-chave. Mas para facilitar a busca, não
queria que letras maiúsculas importassem. Então, cada uma das cordas que estou comparando se contém algo, estou colocando em minúsculas para que o caso não importe. Então, se você digitar antigas as letras maiúsculas uma das letras maiúsculas todas as letras
minúsculas , será tudo o mesmo. E estamos verificando se esta palavra-chave está contida no nome de nossos cartões ou se a palavra de esqui está contida em nossas etiquetas de cartões e queremos também verificar se a palavra de esqui não é um espaço. Então, se você digitar um símbolo de espaço, não vai importar em tudo e você pode obter todas as cartas e isso não é exatamente o que você quer e, em seguida, temos um homem accost filtro que também é um pouco inteligente em nosso projeto. Se o custo de mana que passamos para este método for igual a sete, isso significa que queremos selecionar as cartas que têm um homem aborda sete ou mais. Então, vamos selecionar todos os cards em que o custo de mana do card é maior ou igual a sete. Então vamos incluir 789 10 11 e qualquer homem superior que você queira ter em seu jogo e se o custo de mana não for igual a menos um. Então, se tivermos que filtrar nossa coleção em tudo e se nós mudamos e modificamos este homem um custo, então vamos selecionar os cards que têm o custo de mana que nós especificamos aqui. Então isso será verdade para 01 e todo o caminho até seis. No final deste método, salvamos o nosso que, neste caso, será uma lista off cartão ativo vai dizer cartões para listar off tipo cartão ativo. Então isso é algo que nós estamos indo para retornar e nós também dizemos ordenar lista pontos devolvidos e ele vai esfolar nossa lista com base nesse método em comparação com assim que os cartões, eles serão primeiro classificados por seu custo de mana. E em cada grupo de custo de Mana, os guardas serão classificados em ordem alfabética. Então eu acho que este vai ser o fim para esta palestra. Agora, eu acho que você entende a parte mais complexa sobre esta classe e sobre o gerenciamento de sua coleção que você tem todos os cartões, todos os ativos de cartão que você definiu em seu projeto. E você quer obter certos subconjuntos desta coleção e você tem este
método muito geral que é ouro obter cartões. E com base em todos esses critérios que você pode colocar neste método como argumentos, você pode selecionar certos subconjuntos fora guardas e o pode ser
realmente, muito específico. Por exemplo, você deseja selecionar os guardas que têm o custo de mana desativado. Seis. Ao mesmo tempo, eles têm que pertencer a uma determinada classe de caracteres e eles devem ter certas palavras-chave em seu nome ou em suas tags, e ele irá retornar a você esta lista muito estreita e muito específica de guardas que satisfazem este critérios na próxima palestra vai dar uma olhada no resto fora dos métodos nesta classe
coleção de cartas . Alguns deles apenas usaram esse método. Mande os guardas fazerem uma busca menos geral. E há através de métodos para salvar e carregar as cartas que o nosso
jogador tem no Player Braff então obrigado por assistir e eu vou vê-lo na próxima palestra.
6. 205 - Curso CardCollection Parte 2: Olá, todo mundo. E obrigado por assistir o curso. Em nossa palestra anterior, começamos a olhar para a classe que ele é coleção de cartões de ouro que cuida, armazenando os dados sobre todos os cartões que temos no projeto. Ele também é responsável por saber quais guardas são jogador tem e quantos deles ele
tem . E também podemos usar este método muito geral de que ele é frio, obter cartões para obter certos subconjuntos de todos os cartões que temos no projeto. E agora que cobrimos esta parte mais difícil sobre este vidro e talvez até mesmo de todo
o projeto em que estamos trabalhando, vamos dar uma olhada em alguns outros métodos que temos neste vidro. Portanto, existem esses dois métodos. Consiga guardas de caráter e receba cartas com Rarity. E eu tenho várias linhas comentadas em cada um desses métodos porque eu usei uma maneira antiga com separado fazendo consulta para obter uma coleção fora thes cartões. E agora que eu tenho este método muito geral obter cartões, eu posso apenas chamar esse método. Então, se estamos procurando por cartões que pertencem a determinado personagem, então nós apenas passou os seguintes argumentos em nossos cartões get. Verdadeiro. Então estamos mostrando aos guardas que o jogador não é dono. Sim, estamos incluindo todas as raridades, o que também é verdade. Estamos incluindo todos os personagens, o que é falso. Então nós queremos obter as cartas que pertencem a Lee para este personagem. Caractere ativo ativo ativo Ácido opções Raridade Básico. Temos que dizer algo aqui porque estes são argumentos opcionais e este argumento raridade opções básicas. Não vai importar nada, porque estamos incluindo os guardas fora de todas as raridades. E agora que chegamos ao nosso ativo de caráter, podemos apenas ver ativo e todos os outros argumentos. Eles serão apenas definidos para seus valores padrão, então a palavra-chave será definida como uma string vazia. O custo de mana será definido como menos um, então incluiremos todos os custos de mana e incluiremos cards de token. Ele será definido como false para o valor padrão em nosso método get cards, e nós temos um método semelhante que é ouro obter cartões com raridade, e desta vez nós não temos que obter tão profundo nesses diferentes argumentos que temos em nosso get método carros, por isso estamos mostrando cartões que o jogador não possui. Estamos incluindo todas as raridades. Temos que definir o falso porque queremos ter uma raridade específica fora guardas que é retornado por este método. E nós queremos ter cartões fora de Rarity que temos especificado como um argumento fora deste método , e eu posso dizer-lhe instantaneamente onde usamos este método. Este método vai ser usado para obter certas cartas de nossos pacotes. Então, quando você abre a parte de trás, você quer gerar um cartão de certa raridade, e você quer ter certeza de que os personagens não são ultra sorte e eles ficam lendário não é que muitas vezes e as cartas ainda comuns mais frequentemente e assim por diante e assim por diante. Então, quando você está abrindo um pacote, você quer gerar um cartão de uma certa raridade, e é aí que vamos usar esse método. Existem esses outros métodos. Temos um recurso de guarda método. Obter ácido de guarda pelo nome, já que temos este dicionário de cartões antigos que contém todos os cartões que temos em nosso projeto pelo nome, e pode haver uma situação em que você fez um erro de digitação em algum lugar, e ele quer pesquisar nossos cartões antigos Dicionário quatro e nome que ele nem sequer tem. Então, estamos verificando. Se todos os cartões dicionário contém a chave, então nós devolvemos todos os cartões. Dicionário com a chave off nome e em outros lugares Nós virar não para que não há tal ácido de guarda em nosso dicionário no aplicativo sair. Então, uma vez que este vidro é o comportamento de Amona, podemos usar métodos como despertar e na aplicação. Sair também é parte fora do comportamento Monta. Então, quando saímos do aplicativo, queremos salvar a quantidade de guardas em preparativos do jogador, que é esse método, e é frio exatamente assim. E quando estamos apenas abrindo nossa cena e a cena é carregada, este método acordado será frio, e vamos carregar a quantidade de cartas dos preparativos do jogador em nossa quantidade de cada
dicionário de cartas . Primeiro, vamos dar uma olhada em salvar quando estamos salvando algo no jogador. Talvez estejamos iterando sobre todos os cartões em nossa matriz de cartões antigos. Se a raridade deste cartão é definida como básica, então quem colocou este inteiro em respirações do jogador e preparativos do jogador é um certo lugar que
não é apagado mesmo quando você fecha o aplicativo e ele funciona, mesmo se você estiver executando o aplicativo no editor de unidade e para armazenar alguns dados no player, talvez você tenha que especificar uma chave de string, e então você colocar seu valor em respirações de jogador. Então, se estamos salvando essa quantidade para um guarda básico do que dizemos, número fora mais nome do ativo cartão. Assim, desta forma, vamos garantir que todas as chaves no jogador talvez seu único e diferente. Porque todos os nomes dos nossos cartões, eles também são únicos e diferentes. Bem, digamos Player Pref definido em número off, seguido pelo nome do seu cartão, e você colocar o número padrão fora cartões básicos, que é definir três agora e mais. Então, se não é um cartão básico e é um cartão que você pode realmente obter ao abrir um pacote, talvez um lendário, talvez um cartão raro ou alguma outra raridade. Então nós dizemos jogador, talvez definido em nós usamos a mesma maneira fora de obter este kiwi corda dizer número off, mais o nome do nosso cartão s ele, e nós colocamos o valor do nosso dicionário nos preparativos do jogador para que nós dizemos quantidade fora cada cartão como uma chave. Usamos nossos ativos de cartão como um índice, e ele retornará um inteiro e o salvará em preparativos do jogador. E semelhante a isso. Usamos uma técnica muito semelhante quando estamos carregando a quantidade de guardas de
respirações do jogador , o
que acontece aqui no final do nosso método acordado. Nós também estamos iterando sobre matriz de cartões antigos porque já obtivemos todos os
ativos do cartão e eles já estão nesta corrida. Então nós é Torri através de todos os ativos do cartão. Se este card tem uma raridade básica, então não estamos incomodando em procurar algo nos preparativos do jogador. Então, na verdade, eu poderia ter apenas excluído essas linhas que preenchem o número padrão de cartas básicas em respiração
jogador. Então, se o cartão é básico, vai definitivamente carregar o número padrão fora guardas básicos como uma quantidade mais. Se o nosso jogador talvez tem uma chave que diz número off mais ver um nome para que ele tem uma chave que corresponde a este cartão, então vamos dizer quantidade de cada cartão irá adicionar Ver um assim este ativo cartão e vai usar esta mesma chave para obter um inteiro que ele está armazenado no player. Talvez assim vai dizer ponto do jogador Braff entrar em número off, mais ver um nome e mais. Então, se não há nenhuma chave que confinamos em preparativos para jogadores. Então Blair talvez tenha desligado
o número da chave. Veja, um nome é igual a dois falsos, então vamos definir a quantidade deste cartão para ser igual a zero. Então isso é tudo o que fazemos em nossa classe de coleção de cartões. E mesmo que não seja tão longo, é uma
grande classe, grande classe, e isso nos ajuda com um monte de coisas em nosso projeto. Então, essencialmente, se você pensar sobre isso, nós já temos uma maneira de tirar qualquer subconjunto de nossos cartões, o que é muito útil para navegar em sua coleção. E também já temos uma maneira de salvar a quantidade fora guardas que seu jogador tem
nas respirações jogador e podemos salvá-lo e carregado. Portanto, é realmente muito versátil, e já vendeu um par de grandes questões que queremos resolver neste projeto. Então, agora que fizemos muita teoria,
você sabe tudo sobre ativos de guarda, você sabe sobre as maneiras como eles são gerenciados em nossa coleção de cartas. Eu acho que na próxima palestra vai finalmente fazer algo mais prático. Eu gostaria de agradecer-lhe muito por assistir as partituras e eu vou vê-lo na próxima palestra.
7. 206 - Como criar um menu e estabelecer o layout da cena: Olá, todo mundo. E muito obrigado por assistir a este curso sobre como fazer menus para o seu jogo de cartas. Então nesta palestra, eu queria começar a fazer algumas coisas práticas e montar algumas das coisas que precisamos para o nosso menu visto. Então, em vez de usar minha cena só para mostrar como algumas coisas são feitas. Vamos fazer uma nova cena. Por exemplo, eu vou para a pasta SS. Eu vou para o arquivo Selecionar novo visto aqui, e eu posso ir para o arquivo novamente e selecionar Salvar visto como e vamos chamar este um menu visto curso , certo, Então a cena está apenas vazia, e não tem nada além do principal câmera. E nosso objetivo para esta palestra é trabalhar um pouco com unidade. Você eu e dois ganância o menu principal. Então o menu que diz jogo de loja, navegar na coleção e abrir pacotes algumas outras opções que terão sua primeira coisa que podemos realmente fazer é ir para sprites e encontrar nosso fundo. Sprite e eu podemos selecionar nossa visão vista, e eu poderia apenas colocar nossos golpes na visão da cena. Então essa é a primeira coisa agora, se voltarmos para o modo de jogo, podemos ver que nossa cena tem um belo fundo. Eu acho que eu posiciono isso em 00 Ok, parece bom. Então, a próxima coisa que quem faz o menu principal é realmente desenhado em uma tela. Então deixe-me criar isso. Eu vou para a hierarquia, criá-lo, eu e aqui eu sei que você não é capaz de ver este menu. Na verdade, deixe-me pegar o canto da janela da unidade para que eu possa mostrar isso para você. Então eu vou criar eu vou para você. Eu e eu estamos criando uma tela. Então, depois de eu fazer isso, nós temos dois novos objetos criados. Um deles é uma tela. O outro é o sistema de eventos que irá gerenciar clicando nos botões na tela e
muito mais coisas. Na verdade. Então, primeiro, vamos discutir o que é uma tela. Então, a cannabis é destinada a conter você diferente. I elementos e em unidade, temos vários deles. Há imagens lá, pilhas e imagens em impostos. Eles são organizados em diferentes combinações e eles também formam botões, controles deslizantes e listas de rolagem e assim por diante. E assim por diante. Mas no núcleo deste que temos apenas dois principais. Vocês são elementos, imagens e textos. Então, primeira coisa, vamos bem rápido e eu vou e vou criar um u I. Eu não vou mostrar-lhe cada vez como os muitos olhares eo que exatamente nós criamos? Vou mencionar isso verbalmente. Então agora eu estou criando um painel, e um painel é algo que vai se estender por toda a área fora de seu pai. Então, atualmente, este painel, ele se estende por toda a tela. E há várias coisas que queremos mudar neste painel. Então, a primeira coisa é, a imagem de origem por padrão é definida como plano de fundo, e queremos mudar isso para nenhum. Então eu só quero que este painel dê uma certa sombra de uma cor mais escura à nossa cena. Então eu vou definir para nenhum. E também é lido fora dos cantos arredondados. Então, se oprimido controla isso, então você pode ver que aqui nós tínhamos um ligeiro cantos arredondados. E novamente, se eu mudar de volta para nenhum, então nós temos apenas cor sólida no painel. Segunda coisa, eu gostaria de mudar esta cor para colar preto mais escuro e o Alfa Weaken apenas chegar com algum valor que nós gostamos que vai escurecer, são vistos um pouco. Então você pode ver que mesmo que este elemento você é chamado de painel, o painel é apenas uma imagem. Então, o único componente de script que este objeto de jogo tem ainda é uma imagem. E em seguida vamos criar nosso você I para o fundo do menu. E eu não gosto de fazer todo o trabalho do zero, então eu vou pegar algumas pré-fabricadas. Isso tem alguma semelhança com o porquê que queremos criar. Então eu vou para pré fabs e vamos ver o que temos aqui. Eu acho que essa coisa que é chamada de gerente de mensagem, em vez disso, ela comeu isso em nosso visto. É um pouco como a coisa que queremos criar para este menu, então eu vou expandir isso. Eu vou para a tela e nós não queremos trazer esta tela para o nosso campus e
torná-la uma criança do painel Soil acabou de criar duplicado fora desta coisa de fundo, e eu posso fazer isso clicando com o botão direito e selecionando duplicar aqui no menu Oregon Pressione Control De ou Command D em um Mac. Isso vai criar apenas uma cópia deste objeto, e eu vou trazê-lo aqui e torná-lo uma criança fora do nosso painel. E então, é
claro, removerei o gerenciador de mensagens porque não queremos mudar isso, e não queremos mexer com ele. Então agora temos esse passado que é uma criança fora do nosso painel. Pode parecer que ele desapareceu, e não é visível em nossa cena, e há uma maneira rápida de devolvê-lo à sua posição original para que eu possa selecionar sua chamada porcentagem de ancoragem, que controla o posicionando fora pequenas coisas triangulares que são âncoras frias. Então, se eu voltar para a cena, curiosamente, acontece que nosso objeto de fundo está bem no centro da nossa tela agora. Então, se eu ir e selecionar personalizado, l pressionado turno de controle antigo e também como este percentual, que vai caber esta imagem para ocupar todo o painel. Então não, se um duplo clique e ir aqui, provavelmente
há outra razão que torna esta imagem tão pequena, que é a sua escala. Então, para o nosso gerenciador de mensagens, usamos uma escala diferente. Então, agora, se eu ajustar a escala para um, então esta batalha deve finalmente ocupar toda a área da nossa tela. E agora o que queremos fazer é eu entrar e dar a esta batalha algumas apostas. Eu posso fazer isso manualmente aqui. Então deixe-me dar 100 pixels de apostas em cada lado. Então eu posso entrar e reorganizar manualmente algumas das coisas para que eu goste de como ele é colocado . E então eu aplicarei essas coisas que são chamadas âncoras nos cantos de nossos muitos
assim . Em vez de chamá-lo de fundo um, posso renomeá-lo para o fundo do menu. Se expandirmos o fundo do menu, ele tem vários elementos. 1º 1 é chamado de decoração de saco de cartão, que é a imagem do crânio. O 2º 1 é o quadro que é chamado de nove Sprite fatiado e deixe-me mostrar-lhe o que
é isso . Então o quadro é feito a partir deste sprite que é chamado quadro oito cinza, e se selecionarmos e abrirmos apesar do editor Sprite, então você será capaz de ver que existem essas pequenas linhas verdes no Sprite, e nós podemos realmente arraste-os e reorganize-os de uma forma que criemos nove pedaços deste sprite. Há os cantos, quatro deles. Há quatro lados no meio,
então, no total, nos dá nove elementos diferentes. E os cantos, eles não estão esticados e não distorcidos. Assim, os cantos são refletidos como estão, e esses elementos horizontais, esses elementos verticais, eles são apenas esticados em uma direção, e o meio é apenas unidade esticada formalmente. E para o nosso sprite, o que temos aqui, não
importa nada porque o meio é completamente transparente. Então você não é capaz de ver o que acontece lá. Posso fechar este editor Sprite. Posso pressionar reverter porque já tínhamos as configurações certas para ele. E agora, no fundo do
menu, eu quero organizar nossos botões e nosso título de jogos automaticamente. Então, para fazer isso, eu posso clicar com o botão direito e criar um objeto de jogo vazio. Então todos os objetos que eu quero organizar aqui, eles vão para este objeto de jogo vazio. Eu posso dar-lhe um percentual de ancoragem muito rápido todas as mudanças de controle no meu teclado. Esticá-lo ao longo de todo o espaço fora do nosso objeto de fundo do menu, este objeto álcool ele parte inferior pai. E organizar nossos botões de forma muito rápida e eficiente. Eu posso ir e adicionar um novo componente ao nosso pai botões, que é chamado de um grupo de layout horizontal. Você pode apenas digitar algo aqui em Component, e ele vai encontrar todos os componentes que estão lutando bem com sua palavra-chave. Então vamos adicionar o grupo de layout horizontal. , Na verdade, minha aposta. Deveríamos ter adicionado o grupo de layout vertical porque queremos organizar nossos botões verticalmente, então vou refazer isso. Vou encontrar um grupo de layout vertical aqui. Vamos acrescentar isso. E agora vamos apenas criar um único botão para que eu bem rápido, ir para você. Eu crio um botão. Nós podemos controlar a colocação e espaçamento fora dos botões que serão criados como uma criança fora do nosso pai botões nas configurações para o nosso grupo de layout vertical espírito botão. Então, por exemplo, eu gostaria que essa rota controlasse o tamanho filho, tanto em termos de com quanto de altura. Então, atualmente, este botão não parece tão atraente. Ele só ocupa todo o espaço fora do nosso pai botões. Mas quando criarmos mais desses botões, tudo começará a fazer sentido. Então, por exemplo, vamos mudar o nome deste botão em botão play. Vamos mudar o texto que é refletido nesta parte inferior em jogo. Vou mudar a fonte deste fundo para o nosso Devean cortar o fundo que usamos para tudo neste jogo. Na verdade, digitou errado o jogo aqui, então vou digitar de novo. Eu não quero habilitar o melhor ajuste ainda, então eu vou mais tarde chegar com valor fora do tamanho do telefone que será apropriado para todos os botões que terão. Por isso, não vou tocar nisso por enquanto. E quero aplicar outra imagem ao nosso botão. Atualmente, ele disse para você, eu Sprite e eu tínhamos noivas diferentes para nossos botões. Há um conjunto desses botões. Sprites lá são quase imperceptíveis aqui e ali. Botões dourados, zero botões, um botão inclinado. Então esses sprites, eles refletem o estado fora de nossos botões quando eles são oprimidos, pairados sobre e assim por diante e assim por diante. Então vamos apenas selecionar o botão zero como os padrões brilhantes para o nosso botão e um olhar como este , e não parece muito bom porque ele é esticado. Então nós queremos pregar tudo para este botão e então nós vamos mudá-lo para todos os outros botões. O texto. Eu posso mudar sua cor porque é quase imperceptível em nosso fundo. Então vamos deixar o texto branco. E, atualmente, a transição é definida para tonalidade de cor. Queremos alterar isso para espalhar varrido para que as regras especifiquem o sprite que é usado para nosso fundo quando ele é
destacado, pressionado, desativado e assim por diante. Então, por enquanto, vamos selecionar o destaque. É certo. Acho que deveria ser mais brilhante. Vamos selecionar as respirações brilhantes. Eu acho que vai ser ou este botão três ou este outro botão um. Então, atualmente eu estou apenas adivinhando e você pode reorganizar esses sprites que você deseja mostrar quando o botão é pressionado, realçado outra coisa que eu quero desativar. Como o nosso jogo é operado principalmente com bocas e não queremos que os jogadores operem com seu teclado ou jogo ruim, podemos desligar a navegação e navegação é algo que você está principalmente encontrar em jogos para plataformas como PlayStation ou Xbox ou alguma plataforma de computador Er onde você quer ser capaz de pressionar as setas para navegar no seu menu. No nosso caso, não
queremos isso. Então vamos selecionar navegação e disse que não é nenhum. E mesmo que não pareça bom em tudo, vamos lançar o jogo e verificar como nosso botão se comporta. Então, quando lançamos o jogo, ele está todo esticado e não bonito em tudo. Mas agora, quando eu passar o mouse sobre o botão, o sprite muda. É mais brilhante, e se eu pressionar o botão, então fica mais escuro, o que faz sentido. E se eu ir e desativar ou de ativar o botão, que enfraquecer Dubai em agitar esta opção interativa, se eu em pausa o jogo do que o fundo iria apenas ficar escuro e cinza como este. Então eu acho que temos pregado para baixo todos os sprites que queríamos usar para o botão, e eu vou sair da culpa velha por agora, queremos criar vários botões como estes. Agora veja o que acontece quando começo a criar cópias desses botões. Old press control de com o meu botão play, selecionado uma vez, duas, três vezes, e eu acho que isso é o seu Precisamos de apenas quatro botões como este. O segundo botão será botões de coleta fria. Por isso, neste momento, não
quero que isto demore muito. Então eu vou mudar o nome de todos os botões e então eu vou voltar para você. Então eu digitei os nomes dos nossos botões. Eles vão jogar coleção, fazer compras e desistir. E agora eu gostaria de mudar o imposto sobre todos esses botões. Então eu tenho o texto selecionado e eu gostaria de alterar o tamanho da fonte para que ele seja um pouco maior assim. E depois desta mudança, na verdade pode ir e revisar isso então eu vou torná-los um pouco menores do que isso. Vou falar com o pai dos botões. E se voltarmos para a cena, lembre-se que essa coisa sobre Insp Arent ela se estende por todo o espaço fora do
fundo do nosso menu para que eu possa torná-lo um pouco menor para que possamos caber o título no topo, e eu também vou dar-lhe alguns espaçamento aqui, e podemos reajustar as âncoras para que não se estenda estranhamente. E agora eu posso no texto outro texto em cima de nossos botões pai para que eu possa ir e como uma criança fora do nosso menu fundo criando você, você, eu texto. E para este, eu também quero selecionar nossa fonte Devyn barra. Vou mantê-la alinhada no centro tanto na horizontal como na vertical. Vou mudar sua cor para brancos. Ou talvez vamos escolher algo mais escuro final digite o título do jogo aqui, e você pode digitar o que quiser aqui. Ou, na verdade, este menu é apenas um suporte de lugar. Então, mais tarde você substituí-lo por algumas das coisas que você deseja apresentar em seu jogo e algo que você deseja que o seu jogo seja frio e memorizado por este nome exclusivo. Então o nosso vai dizer apenas título do jogo e eu disse que as âncoras para os cantos fora deste retângulo de
texto título do jogo Assim como isso. E para este, eu realmente acho que eu vou usar o melhor ajuste. Então este bloco de jogo de texto será um pouco maior, até mais de 40 na verdade, algo assim, e eu acho que eu tenho um componente neste projeto que eu encontrei na Internet que é ouro contornos circulares. Então vamos tentar encontrar isso Então l procurar contorno círculo e é um script que é
um pouco melhor do que a unidade é construída em contorno e podemos aumentar a contagem de círculos, aumentar a distância efeito para que o cliente L é mais pronunciado e mais visível e na direção
branca. Acho que algo assim o fará. Nós já temos uma espécie de modelo para o nosso menu principal. E a última coisa que eu queria discutir nesta palestra no nosso jogo. Também tínhamos muitos dos objetos que estavam fora da nossa tela. Então agora eu posso simplesmente recolher tudo o que cervejas sob esta tela, ir e criar outro objeto de jogo vazio todas as diferentes telas que vamos usar e que vamos mostrar aos nossos jogadores neste projeto. Eles terão muito comum onde uma estrutura semelhante. Então, por exemplo, este será este objeto de jogo será chamado de tela, eo objeto de jogo filho será chamado de conteúdo de tela ou algo assim. Então eu vou dizer o conteúdo da tela aqui e a tela para fora em vez configurá-lo para 00 de modo que ele aparece no centro fora de nossa cena bem aqui. Então, todas essas telas diferentes que você viu em nossa palestra de introdução como a tela de
abertura traseira e a tela de navegação da coleção. Eles não vão estar separados da nossa tela, mas eles serão organizados aqui na cena em cima do nosso plano de fundo. Então, se usarmos outras telas e outros botões para isso, elas serão chamadas telas espaciais mundiais. Enquanto esta tela que usamos aqui é definida para renderizar o modo de sobreposição de espaço da tela. Então é apenas colocado sobre a tela que estamos mostrando para nossos jogadores e espaço mundial pode ser usado. Por exemplo, se você quiser mostrar algum imposto, seus jogadores no jogo como escrito na parede ou algo semelhante a isso? E nesta cena, teremos várias telas como esta. Por exemplo, um deles será chamado de tela Loja. Este será o primeiro 1 que vamos fazer, e eu posso duplicar esta tela. O 2º 1 será chamado de Tela de Construção do Deck. Teremos outra tela que será chamada de fluxos de seleção de deck prontos. Então, novamente, basta chamá-lo de tela de seleção de deck mais curto e teremos outro que será tela de seleção de
caracteres frio . Então, quando você quer construir um deck, você tem que selecionar para qual classe de personagem você está construindo-o Então nós teremos isso bem e seleção. Escrevi mal isso e aqui também. E estou usando essa estrutura de tela. Você vai ver o porquê. Então, para cada uma dessas telas anexará um script que será um singleton e a maneira como a unidade funciona. E a forma como C Sharp funciona os objetos do jogo que têm scripts singleton. Quando você é visto cargas, eles têm que ser ativados no Inspetor. Então esta marca de seleção em cima do Inspetor deve ser definida como verdadeira e essas coisas que são chamadas de conteúdo de fluxo que irá conter tudo o que é queimado em nossa velocidade. Na verdade, seremos capazes de ativá-lo, e haverá métodos para mostrar, filtrar, ocultar, tela e assim por diante. Você estará muito familiarizado com este conceito até o final deste curso. Então, eu gostaria de agradecer muito por continuar nesta seção. Nós discutimos um monte de coisas teóricas que é realmente importante, como obter certos subconjuntos fora de diferentes ativos de guarda de nossa coleção. Discutimos qual é o cartão e como ele pode incluir algo assim em seu projeto de
união. Você viu o que objetos de ervas script são e como você pode fazer ativos em seu projeto fora deles, e em nossa próxima seção terá objetivo mais ambicioso. Queremos montar uma tela de loja onde seus jogadores poderão comprar pacotes, e eles também poderão abrir os pacotes que eles têm e receber algumas recompensas. Então, obrigado por assistir o curso, e eu vou vê-lo na próxima seção.
8. 301 - Introdução à seção 3: Olá, todos. E muito obrigado por assistir ao curso. Esta seção será inteiramente dedicada a abrir pacotes de cartas, e nosso objetivo para esta seção é dar vida a este item de menu da loja para que, no final
da seção, pareça que isso será capaz de pressionar este item de menu da loja e nós vamos chegar a esta tela. O design desta tela depende inteiramente de você. Eu só queria torná-lo funcional e compreensível no fluxo será capaz de comprar novos pacotes. Então, quando pressionamos isso por botão, alguma quantidade será subtraída da quantidade de ouro que temos e receberá este objeto que representa um novo pacote de cartas. Com este pacote de cartas objeto será capaz de arrastá-lo em nossa tela. E se estamos arrastando para cá, ele deve voltar à sua posição original para que nada aconteça. E esta área da tela representa a área de abertura do pacote. Se arrastarmos o pacote para a área de abertura do pacote, ele deve encaixar no centro. Então eu estou começando a arrastar a matilha. Deixo aqui e acontece que não está na matilha. A área de abertura foi trazê-lo mais perto do centro. Mais perto do centro. Vai estalar. Vai mostrar esse brilho quando passarmos sobre a mochila. Se clicarmos no pacote, ele vai fazer este pequeno shake, e ele vai rever essas cinco cartas. Você também pode notar que enquanto estamos fazendo isso, o botão Voltar agora não é interagir herbal. Por isso, não podemos voltar a partir desta tela até termos experimentado o processo alimentar fora da
abertura de trás . Então agora eu tenho que revelar as cartas um por um e entregá-las. E este verso tem quatro cartas comuns e um cartão raro que é mostrado por este pequeno brilho. Então vamos virar o cartão raro e vamos dormir sobre todas as outras cartas. Quando eu virar todas as cartas, este Dunbarton acende-se e podemos apertar este botão para completar a abertura de um pacote. Então, se eu pressionei as cartas desaparecerem, o botão Voltar ativa. Podemos abrir mais alguns pacotes assim, está bem? E pegue outras cartas e anote as cartas sobre Lee. Eles são mostrados aos seus jogadores. Eles também são adicionados em sua coleção. Lembre-se, na seção anterior, vimos a classe que é chamada coleção cartão. Então, todas as cartas que seus jogadores recebem de seus pacotes, eles são adicionados a um dicionário naquela classe de coleção de guardas. E, em seguida, eles montam fora cada carta que o seu jogador tem é salvo em respirações de jogador. Então vamos virar mais algumas cartas. Aqui. Temos um cartão épico, um cartão raro e outro épico que eu posso pressionar feito, e este botão voltar nos retorna de volta para o menu principal. Então, nesta seção irá cobrir todas as ruas e todos os elementos você I que fazem a nossa loja e tela de abertura de volta trabalho. Gostaria de agradecer por assistirem ao curso, e verei vocês na próxima palestra.
9. 302 - Fazendo o dinheiro e poeira ou peças de reposição HUD: Olá, todo mundo. E muito obrigado por assistir as pontuações sobre fazer menus para o seu jogo de cartas. Na seção anterior, era mais como uma seção introdutória. Então, discutimos alguns scripts que serão muito importantes para o nosso jogo, como a coleção de cartas que nos permite grandes, certos conjuntos ou certas coleções de cartas que satisfazem determinados critérios. E nós também montamos este menu principal, que não foi muito difícil. Então, nesta seção, nosso objetivo é adicionar a tela da loja para que possamos comprar pacotes, pacotes abertos e assim por diante e assim por diante. Então, o menu atualmente se parece com isso. E se sairmos do modo de jogo e voltarmos à mesma cena, teremos que adicionar mais alguns objetos de jogo vazios e preenchê-los com nossos scripts. Então eu vou criar um objeto de jogo vazio e este. Eu vou renomeá-lo para a coleção de cartões, então eu vou digitar a coleção de cartões, e eu vou anexar a coleção de cartões de script a este objeto. Então vamos ver a coleção de cartões aqui assim, e nosso próximo passo é que queremos anexar algo à tela da nossa loja, então queremos ir e adicionar o componente que será gerente de loja fria e instantaneamente podemos estabelecer várias conexões. Então, por exemplo, este conteúdo de tela o 1º 1 temos que arrastar o nosso objeto de jogo que temos sob nossa
tela de loja que irá conter tudo. Todo o material gráfico que vamos mostrar na tela e esta estrutura será muito semelhante para todas as outras telas. Então, para a seleção do deck de construção vai ser quase a mesma coisa. Nós também temos uma rivalidade pública aqui que é chamada de volta pré-fabricada. Por agora. Já o temos em nosso projeto. Vamos dar uma olhada mais tarde. Talvez nós vamos montar um manualmente para que você veja como isso é feito. Então temos nossas mochilas. Preço enfraquecido Defina como 100, por exemplo, que nossos pacotes comuniquem a transformação de que todos os novos pacotes serão parentados para o nosso ponto de
pacote inicial , que é o objeto de jogo onde os pacotes aparecerão quando forem deixados em nossa loja, ou gerente de loja, e você verá como isso funciona em nossos próximos palestrantes. Além disso, quando compramos pacotes em nosso jogo, a posição do nosso pacote será gerada aleatoriamente, então temos nosso alcance de posição X. Então há uma certa coisa como mais quatro menos quatro. Atualmente ele está definido para quatro que serão adicionados à nossa posição inicial de ponto embalado, eu acho, e posição por que Range é a mesma coisa para o nosso por que co-ordena Então nós podemos gerar são pacote maior ou menor. Temos também a nossa gama de rotação. Então, quando nós desovamos em você de volta, ele não vai apenas cair na superfície, mas também será girado em um certo ângulo, que eu acho que é um belo toque. Então temos várias referências a coisas que não teremos sob nossa tela de gerente de loja, e eu acho que quem cria todas essas coisas em nossa palestra atual? Então, a seguir temos o dinheiro tributado, a poeira tributada dinheiro duro e o coração do pó. Então, estas serão duas cabanas diferentes que serão mostradas em diferentes momentos e etapas nosso jogo, e elas serão criadas como Crianças fora do nosso objeto de jogo de tela A área de abertura é um script que será uma criança fora de outro componente sob nosso conteúdo de tela que adicioná-lo mais tarde, e nós também temos esses valores, que a quantidade inicial de poeira e a quantidade inicial fora do dinheiro. Então, se a nossa Blair lançar o jogo pela primeira vez, estas são as quantidades de pó e dinheiro que o nosso personagem vai receber. O dinheiro é usado para comprar pacotes, e o pó é usado para a elaboração, e você começa assim a partir de dis cartas encantadoras. Agora acho que vamos voltar para a nossa cena. Vou clicar duas vezes na tela para que possamos ver a tela inteira aqui e vamos adicionar nossos corações, o dinheiro quente e o pó duro. Então eu vou para a nossa tela e criar um objeto de jogo vazio que servirá como pai para ambos fora de nossas cabanas. Eu acho que eles serão bem parecidos, e eles estarão localizados em algum lugar aqui no canto inferior direito. Então podemos anexar essas âncoras aqui no canto da nossa tela, e aqui elas serão colocadas assim. Você pode alterar o percentual de ancoragem, mas este só irá garantir que o nosso novo pai quente, ele permanecerá no mesmo lugar quando jogarmos o jogo. Então, Cálculo. Um pai da UD e como uma criança fora do nosso coração. Pais. Vamos criar um dos capuzes e o 2º 1 será feito por analogia. Então eu vou clique direito ir para você. Por quê? E criar uma imagem. Queremos ter certeza de que esta imagem gasta todo o tempo fora do nosso duro assim. Pressionei a mudança de controle antiga no meu teclado e selecionei essa porcentagem irritada. Então, quando eu pressionar a mudança de controle antiga, você pode ver que você é capaz de notar algumas das mudanças aqui nas porcentagens de ancoragem que você está aplicando através de sua imagem. Então, quando você mama deslocamento de controle antigo, ele estica a imagem e aplica as âncoras através dos cantos da imagem. Vamos mudar o nome da imagem para dinheiro. Você gostaria disso. E então eu acho que vai selecionar um sprite para isso imediatamente. Então eu quero selecionar um dos sprites que usamos para nossos botões. Por exemplo, este é um fundo. Acho que parece muito bom. E então queremos adicionar outro componente de imagem. Eu vou até você. Eu crio outra imagem. Este eu acho que vou entrar e colocar manualmente. Então esta imagem deve ser colocada aqui e eu quero fazê-la. É menor e aplicarei as âncoras ao legista como antes. Talvez eu queira reajustar a porcentagem de ancoragem mais tarde, e para esta imagem eu gostaria que fosse a ICANN que mostramos na cabana. Então, álcool, este eu posso. E para a ICANN, para o nosso dinheiro duro. Vou selecionar um dos Aikens com moedas que eu tenho no projeto. Talvez este com uma única moeda ou se tivermos outra coisa. Acho que não temos outra coisa agora, então vamos como esta com uma moeda. Lá vamos nós. E para esta imagem, eu também quero habilitar o aspecto reserva para que quando temos diferentes proporções de aspecto e diferentes resoluções de tela, ele não fique distorcido. Eu também vou redimensionar isso. Eu não gosto disso. É tão grande que eu posso e depois as âncoras. Vou aplicá-los aos cantos desta imagem. Então essa é a ICANN. E agora devemos ter o texto. Então, como uma criança fora do nosso dinheiro quente, eu também vou até você. Eu e eu vamos criar um componente de texto e este será colocado de forma semelhante ao nosso Aiken. Vou dar-lhe um pouco de espaçamento em relação ao nosso que eu posso lidar. Estique para ir até o fim do nosso Hud. Então eu vou reaplicar as âncoras para os cantos deste texto, assim, e depois para o texto. Claro, você quer mudar sua cor para branco. Então queremos aplicar o nosso fundo personalizado, que é este deviance wesh. Então eu quero fazer o tamanho do telefone maior. Eu acho que algo como isso vai fazer, e nós vamos fazê-lo para que em uma direção horizontal ainda vai deixar este alinhamento para o lado
esquerdo, fora do nosso texto e verticalmente, eu vou fazer o imposto aparecer no centro off Nossa cabana. Então vamos digitar algum número como 1000 aqui. Ou talvez seja uma boa idéia mudar o alinhamento para algo assim e tornar o texto um pouco menor para que ele não grude tanto na nossa moeda Então isso é basicamente uma dessas cabanas. Podemos criar outra só criando uma cópia deste que acabamos de criar controle da prensa
do solo De em vez de chamar este dinheiro duro. Vou chamar isso de pó duro e vou mudar a ICANN. Então, em vez de usar a moeda, eu tinha um pouco de Aiken que mostra como algo relativo ao crafting. Acho que é aqui o que eu posso com as ferramentas. E agora que temos as duas cabanas,
podemos entrar na tela da nossa loja porque ela as usa e temos que estabelecer a conexão com todos os elementos que são necessários em nossos corações. Então primeiro queremos arrastar o imposto sobre dinheiro para aqui, e vamos arrastar o texto de poeira para aqui e essas referências de objetos de jogo. São apenas referências a esses objetos pais fora de nossas cabanas. Então este é o dinheiro quente aqui, e este é o pó quente aqui por padrão na cena, podemos colocá-los em ativo para que possamos de ativar ambos, e eles serão ativados quando precisarmos mostrá-los através da nossa loja tela. Então, em nossa próxima palestra vai continuar estudando e construindo nossa tela de loja, e eu acho que vamos dar nossa primeira olhada no roteiro. Gerente de loja vai discutir o que ele faz, e como ele lida com as quantidades de dinheiro e poeira que o nosso personagem tem e vai abordar a parte real com pacotes, talvez fazer um pré-fab fora de um pacote. E então nós também temos que examinar o que é esse outro script que é chamado de
área de abertura ? Isso vai fazer muito trabalho para nós quando estamos arrastando o pacote e ele realmente nos mostra A abertura do cartão gera cinco novas cartas para nós, e eles são adicionados em nossa coleção, então eu gostaria de agradecer muito por assistir a curso e eu vou vê-lo na próxima palestra.
10. 303 - Script do ShopManager: Olá, todo mundo. Em nossa palestra anterior, fizemos esses dois novos objetos. Um deles é dinheiro de ouro, HUD. O outro é chamado de Pust Hut para refletir as quantias de dinheiro e poeira que nosso jogador tem e esses objetos lá sobre o escondido. Então, nesta palestra, eu queria discutir o gerente da loja de roteiros. Este é um dos scripts que nos ajudará a gerenciar a abertura traseira e o processo de compra de pacotes. Então, há todos esses campos públicos diferentes que preenchemos. Alguns deles, alguns deles ainda estão em branco, e vamos discutir o que eles fazem em nossas próximas palestras. Então vai saltar dois Monta desenvolver e vamos dar uma olhada neste copo. Então, entre todas as rixas públicas que esta turma tem, nós também temos um gerente de loja estática pública. Instância Em ativação, dizemos instância é igual a isso. Então este é um chamado Singleton preguiçoso e vai usar este script para acessar tudo o que
queremos saber sobre a loja, quantidade
atual de pacotes, e assim por diante, porque eu tive um par de problemas. Eu tentei fazer os scripts que são objetos filhos fora de nossas telas. Singleton também. E quando eu fiz isso, desde que nossas telas e todo o conteúdo desta tela da loja quando acabamos de lançar o jogo, vemos apenas o menu principal e as telas são desativadas. Então o acordado não está ficando frio, e o script não é inicializado corretamente. Então concentramos todas as informações que temos que acessar nos tempos antigos neste loja e no gerente de loja, estamos certificando-se de que o objeto do jogo que tem este script será ativado nos velhos tempos . Então, vamos ativar e desativar apenas este objeto de jogo que é chamado de conteúdo de tela. Então, acordados, dizemos que instância é igual a isso. Escondemos a tela, então quando o acordado está frio, isso significa que acabamos de lançar o jogo e logo não queremos mostrar esta tela, então estamos escondendo. É um método especial que usamos aqui, e outra coisa que estamos fazendo. Estamos carregando o valor das costas que nosso jogador pode ter do hálito do jogador. Então, estamos verificando. Se Blair Crafts tiver as costas fechadas e, mais tarde, você verá que escreveremos algo nas respirações dos jogadores com essa chave neste script também. Então, se tivermos alguns pacotes fechados, estamos iniciando uma quarentena e uma equipe principal porque também queremos visualizar o processo obtenção de pacotes. É por isso que estamos usando, acordo aqui, que é chamado “Dê Back “a quantidade de costas que usamos aqui. As respirações do jogador terminam nas costas abertas. Então nós estamos obtendo a partir das respirações do jogador e deste verdadeiro sentido, por exemplo. Então, neste caso, não
podemos sequer ver a tela. Então podemos dar essas costas aos nossos jogadores instantaneamente e não mostrar as animações. Em seguida, há este próximo método que diz carga, poeira e dinheiro realmente diz para, Mas deve dizer de preps jogador. Mas apenas para o bem fora de ser consistente, eu não estou mudando nada aqui então realmente significa baixo pó e dinheiro de preparativos jogadores. Então esta classe, ele também irá gerenciar a quantidade de poeira e a quantidade de dinheiro que o nosso jogador tem. Como você pode ver aqui temos essas duas propriedades que são muito semelhantes, então quando o nosso jogador recebe ou quando ele gasta dinheiro, tudo vai passar por esta propriedade que é chamado dinheiro. E quando colocamos algo em dinheiro, também
estamos nos certificando de que estamos atualizando o imposto em nossa cabana de dinheiro. Então dizemos que o imposto sobre dinheiro é igual a dinheiro à corda e a mesma coisa que estamos fazendo com este texto em pó. Então temos esse método que é chamado BIPAC, que é realmente simples. Só estamos checando se temos dinheiro suficiente. Então, se o dinheiro é maior ou igual ao preço do pacote Então, se tivermos fundos suficientes para comprar a volta, então estamos subtraindo o preço de volta do nosso dinheiro da propriedade que está aqui. E quando isso está acontecendo, a propriedade também atualiza o texto como um conjunto. Então, todas as informações serão apenas reais e você verá a quantidade atualizada de dinheiro que você tem apenas de chamar esta linha. Dinheiro menos é igual ao preço de volta. E então vamos começar isso. Gordon, dê pacotes. Estamos dando apenas um pacote para o nosso jogador e, na verdade, logo após este método BIPAC, temos esta quarentena e você também pode ver que aqui este segundo argumento booleano instantâneo . Ele está no chamado argumento opcional. Tenho-o definido como false por padrão. Então, se estamos chamando este método sem um segundo argumento como fazemos aqui, isso significa que instantâneo que ser definido como falso, que significa que quando damos o nosso jogador de volta irá mostrar uma certa animação desta volta peering e indo de um um lugar para outro. Então vamos dar uma olhada no que acontece em nossa quarentena. Eu o numerador dou pacotes. Parece um método, mas ele retorna este estranho tipo ia numerador, e temos que chamar este método dizendo início 14 dar as costas. Neste caso, estamos usando de acordo para interromper a execução do nosso código e esperar por um certo período de tempo como fazemos nesta linha, você retornaria. Você espera por segundos e não podemos fazer isso com um método comum. Então é por isso que precisamos dessa funcionalidade Corentin Syntex e Corzine e logo no início, fora de nossa gravação, temos um quatro Luke. Então vamos repetir tudo o que está acontecendo neste loop de quatro até darmos ao nosso jogador todos os pacotes especificados. Aqui estão um número fora costas, por isso estamos dizendo e eu de zero a ou um número de pacotes que eu mais. Então vamos para o Enshi oito. Novo objeto de jogo e este objeto de jogo serão armazenados em um prefab que será chamado de pacote prefab. É também um campo público fora desta classe. Você vai falar sobre a pré-fabricação de trás em nossas próximas palestras. Até agora, somos loucos. Ela está a comer esta pré-fabricada que ainda não fizemos. Estamos em censura, odiando como uma criança fora costas objeto pai. Então isso apoia objeto pai é apenas para transformar. Isso será aparente em todas as matilhas que fabricamos e então vamos fazer isso para
apimentar um pouco. E para tornar esse processo de enterramento mais interessante, estamos aleatoriamente tirando a posição inicial de nossas costas. Primeiro dizemos vetor três loco posição estrangeira. Você embala para a primeira coordenada, dizemos intervalo de pontos aleatórios e temos essas variáveis nesta classe. Isso é uma posição X alcance e posição. Por que intervalo tão em coordenada X, estamos escolhendo um número aleatório de menos posição X intervalo dois mais posição X intervalo, que
possamos deslocar posição X intervalo para a direita ou posição X intervalo para a esquerda e a mesma coisa que estamos fazendo com nossas coordenadas Y para que possamos mudar de posição. Por que ir até o topo ou posição? Por que ir para o fundo da nossa tela? E nessas coordenadas,
eu só não queria que essas costas ficassem umas nas outras, e todas elas têm um colisor de três D. Então, para ter certeza de que somos capazes de escolher um dos pacotes com precisão, eu também estou dando a eles um certo deslocamento no set Gordon AIDS. Então, estamos multiplicando as costas criadas pelo deslocamento de posicionamento traseiro. E vamos colocar as costas mais recentes que fizemos em cima de todos os outros pacotes quando criamos de volta. Também dizemos que os pacotes criados, plus e packs criados são apenas uma propriedade. Eu acho que já vimos isso aqui, e esta propriedade está aqui apenas para rastrear a quantidade de pacotes fechados que temos quando
saímos do jogo. Ele também será usado para escrever algo em nossos preparativos para jogadores para garantir que nossos jogadores não
perderão nenhum pacote que eles ganharam no jogo. Em seguida, estamos fazendo a mesma coisa com sua tela de modo que a última volta que criamos apareça em cima de outras costas. Classificando sábio, estamos vendo você voltar ponto obter componente em Crianças. Estamos pegando a tela para que nossa mochila seja feita de você. Gosto das nossas cartas como as nossas costas de cartas. E estamos definindo a ordem de classificação fora da tela para os fundos criados também. E então temos esta declaração se, estamos verificando se instantânea. Então, se você quiser recompensar isso de volta ao nosso jogador instantaneamente, por exemplo, isso acontece quando queremos carregar a quantidade de pacotes dos preparativos para jogadores. Então, se estamos fazendo isso, nós realmente não nos importamos em mostrar a animação ou esta viagem de volta de um lugar para outro. Nós só queremos fazer com que quando os jogadores entram na loja, eles já vejam que eles têm alguns dos pacotes que ganharam anteriormente. Então nós apenas dizemos que você volta transformar posição local igual a esta posição local para um novo pacote que nós geramos e, caso contrário, estávamos primeiro ajustando você de volta. Transforme a posição para posição inicial do ponto da posição embalada. Então nós estamos ajustando a posição de volta para algum lugar diferente e então de lá estamos localmente movendo isso de volta para a nossa posição local de volta que nós geramos aqui em 0.5 segundos e esperar que este evento seja totalmente jogado e não criar Todos os pacotes uma
vez que estamos devolvendo isso estavam dizendo que você voltaria. Você espera por segundos. Então, queremos ter certeza de que esta animação fazer movimento local é totalmente jogado. By the way, se você está em você para isso, podemos dizer transformar ponto fazer movimento local em Lee porque estamos usando fazer entre neste projeto e entre é assim chamado mecanismo de interpolação. É soletrado como este fazer entre sem 1/3 e. Então, como este entre. E se você não tem experiência anterior com motores de geminação e tweeting em geral, Eu encorajo você a experimentar entre porque é. Primeiro, é grátis. É muito simples de usar, e realmente simplifica muitas coisas que você pode fazer em seu projeto. Por exemplo, se usássemos a unidade construída em coisas, deveríamos ter usado nossa função de atualização e, em atualização, aprenderíamos nosso pacote para
posicionar ou suavizar a Europa ou suave, úmido ou qualquer outra coisa. Então seria uma dor fazer o nosso pacote se mover do ponto A para B e com o meio isso torna essas pequenas animações muito mais simples. E tudo isso é alcançado apenas com uma linha de código. Temos usado entre muito para fazer a funcionalidade de batalha do jogo de cartas. Então todo o carro dirigiu e o guarda tem que viajar do convés para a sua mão. É velho feito com fazer entre, e é muito conveniente. Então, se você é novo no Tween ing e fazer entre, confira, é realmente simples e é usado muito em todo este projeto. E assim, para cada volta, mesmo que queiramos dar ao nosso jogador seis ou 10 pacotes, ele vai passar por este processo fora, criando em você pacote, escolhendo uma posição correta para o Pac, certificando-se de que é um ponto incorreto em termos de classificação e, em seguida, geminação ou mover isso volta para a nossa posição local selecionada para nova volta em 0,5 segundos. Então todos esses pacotes aparecerão gradualmente um por um, e eu acho que em nosso projeto, nós não estamos realmente usando isso, então estamos constantemente dando apenas um pacote para o nosso jogador. Mas se você quiser, você pode fazê-lo funcionar em seu projeto para que quando ele passar,
ele recebe dois ou três pacotes e assim por diante e assim por diante. Então temos este próximo método no aplicativo sair e este método que podemos usá-lo porque este gerente de loja é um comportamento de modelo para que possamos usar acordado no aplicativo, sair e assim por diante e assim por diante e em sair aplicativo. É ouro. Bem, obviamente, quando você desistiu do jogo. Quando saímos do jogo, chamamos o método de economizar poeira e dinheiro em respirações do jogador que faz isso. Ele apenas escreve T monta poeira e dinheiro em preps jogador com essas chaves, poeira e dinheiro. Então temos feito isso e também no aplicativo sair. Estamos verificando a quantidade de pacotes que temos em nossa propriedade criada de pacotes, e estamos escrevendo isso em nossas preparações de jogadores pelos pacotes de chave fechada para que, quando
lançarmos o jogo da próxima vez, possamos manter a quantidade fora de pacotes fechados que nosso tem na loja. Este método que usamos em carga acordada, poeira e dinheiro. Na verdade, ele deve dizer de Vamos deixá-lo para, por agora baixa poeira e dinheiro para preparativos jogador. Estamos verificando se o jogador talvez pó Haski. Então, se guardamos algo no hálito do jogador, então, se não tivermos uma chave, é mais provável que estejamos lançando isso pela primeira vez. Então, se tivermos a chave que diz poeira, então devemos obter o valor inteiro fora da quantidade de poeira que temos, e nós atribuímos a nossa propriedade de poeira e se não tivermos a chave em nossos
respirações de jogador como um triste, significa que estamos lançando o jogo pela primeira vez. Em seguida, queremos dar ao nosso jogador a quantidade inicial de poeira. Então, se você quiser deixar seus jogadores criar algumas cartas imediatamente e você quer dar-lhes alguma quantidade inicial do que este é o lugar perfeito onde você pode fazer isso e nós estamos fazendo a mesma coisa por dinheiro tentando carregar a quantidade de dinheiro de preparativos para jogadores. Se não temos nada escrito em preparativos do jogador, estamos inicializando ou dinheiro com este valor inicial e, finalmente, os métodos para mostrar a tela e ocultar a tela da loja. Dizemos streaming de conteúdo. E se estamos mostrando a tela, dissemos que ativa e dizer True aqui. Se estamos escondendo a tela, estamos desativando a tela surreal, chamando o método definido ativo e estamos passando false como um argumento aqui. E também, se estamos mostrando a tela, queremos mostrar nosso dinheiro quente para garantir que nossos jogadores tenham algum feedback visual sobre quanto dinheiro eles podem gastar? Quantos pacotes mais eles podem comprar? Então, dinheiro? Hot disse Ativo. Estamos mostrando a tela, senhor, estamos passando true para o método, e se estamos escondendo a tela, então estamos passando false para o método. Então eu acho que este vai ser o fim para a nossa palestra atual. Agora você sabe como funciona a nossa classe de gerente de loja. É bastante simples e direto. Os métodos não são tão longos, e este copo
, cuida de várias coisas. Ele cuida,
mostrando e escondendo nossa tela e armazenando alguns valores que podem ser acessados por outro aspecto do nosso jogo também. Como as quantias de pó e dinheiro. Ele gerencia a quantidade de pacotes fechados que já temos e também enfraquece as recompras através deste copo. Na próxima palestra, acho que falaremos mais sobre a alcateia. processo de abertura analisará a área de abertura despojada que está localizada aqui na pasta da
nossa loja também, e também construirá um pré-fabricada fora do nosso pacote, que ainda não fizemos. Então eu gostaria de agradecer muito por assistir e eu vou vê-lo nas próximas palestras
do curso.
11. 304 - Como criar um layout da tela de abertura de pacotes: Olá a
todos, todos, e bem-vindos de volta ao curso. Então, na palestra anterior, você viu este script que está anexado à nossa tela de loja que é chamado de
gerente de loja . E nesta palestra, acho que vamos adicionar algumas coisas visuais, também. Nosso conteúdo de tela lá vai realmente começar a preencher e adicionar algo à nossa
tela de loja no curso deste projeto. Era bastante simples, então eu verifiquei com a minha cena anterior, a que já foi feita e totalmente funcional e um dos objetos que tínhamos aqui. Chama-se Área das Costas Não Abertas. É apenas um objeto de jogo vazio comum. Então vamos apenas criar um. Renomeie para área traseira fechada como esta, na verdade, para ter certeza de que estamos fazendo isso corretamente e que estamos editando tudo. Vamos clicar duas vezes na área traseira fechada para que possamos ver onde ela está. E como uma criança fora da nossa área fechada, queremos ter alguma coisa gráfica visual, alguma representação gráfica nesta área. Então vamos para a nossa pasta Sprites e vamos localizar isso por imagem de escolha livre. Acho que vou pegar esta estola, e vou fazer dela uma criança fora da nossa área de matilha fechada. Vou controlar a balança. Eu acho que isso vai fazer e por que Direction também, então eu vou verificar de volta com a minha visão de jogo. Então, no jogo, ele vai se parecer com isso, o que é melhor. E, em seguida, também deslocado para este lado, torná-lo um pouco menor e deslocado para o lado, controlando a sua exposição. Então vamos tentar trazê-lo aqui. Talvez torná-lo um pouco mais estreito assim. Então esse é o nosso histórico para a área de abertura do PAC. Eu acho que não parece muito ruim, então ele vai ficar sentado aqui. Se não queremos que este menu principal nos distraia enquanto estamos trabalhando na tela da nossa loja enfraquecer. Apenas desative nossa tela para que eu possa desativar esse objeto de tela na cena e Baratas começar a trabalhar no nosso grito de abertura do pacote. Em seguida, na cena, eu também vou criar outro objeto filho fora da nossa área de pacote fechado. Tudo bem, clique em criar um objeto de jogo vazio e este objeto de jogo será chamado de
posição empacotada inicial . Então nós tínhamos uma referência como esta em nossa posição inicial de script gerente de loja, e agora podemos estabelecer várias outras referências em nosso gerente de loja. Então, esta área traseira fechada, servirá como um pai de matilhas. Esta transformação, e esta posição inicial de volta servirão como esta tendência a partir do ponto de embalagem inicial. Então a idéia é que o PAC aparece aqui e então arrastamos os pacotes fechados daqui para esta parte da tela. E aqui nós experimentamos a abertura traseira o propósito fora da nossa posição inicial embalada é
que queremos soltar o pacote tipo de cima. E para conseguir isso eu acho que eu disse isso essa posição para algo como menos cinco. Aqui podemos verificar mais tarde. Assim, com a câmera de perspectiva, isso resultará em uma ilusão de que a parte de trás é descartada do topo e também um pouco do lado direito para esta área, que é o que estamos procurando. E, em seguida, criaremos outro objeto vazio. Vou clicar com o botão direito aqui em nossa tela, conteúdo cria vazio, e este objeto de jogo será chamado de área de abertura mais tarde irá re ajustar a posição
deste objeto. Eu não acho que ele vai ter alguma representação visual, ou você pode adicionar algumas coisas visuais para esta área de abertura bem eu sei com certeza que ele vai ter um colisor e vai ser um colisor de caixa. Então eu estou tentando ir aqui e procurar por um componente. Vamos digitar caixa de entrada Collider. Então isto não é um colisor de serviço. Este é, na verdade, um colisor de três D. Estamos adicionando um colisor de caixa a este objeto. E eu também quero redimensionar este colisor para que possamos fazê-lo manualmente indo para editar colider aqui. Ou eu poderia apenas redimensioná-lo alterando seu tamanho. Então eu vou torná-lo mais largo assim, e eu também torná-lo Toller. Eu sinto muito. Este é o controle errado. Também farei com que seja portador assim e mudarei a posição da nossa área de abertura. Então, arraste-o para cá. Acho que é isso mesmo. E esta área de abertura terá outro script anexado ao que é importante para a nossa experiência de
abertura do pacote . Vou adicionar componente Anil, procurar área de abertura do pacote e anexá-lo a este objeto e a área de abertura traseira Script tem vários controles interessantes. Por exemplo, você tem esses controles suas cores douradas, onde você começa a selecionar a lendária cor épica, rara
e comum, e estas são as cores do brilho que você vai mostrar ao redor do cartão. Então, você sabe, como, por exemplo, um tom duro. Então, sim, isso é realmente inspirado pela dura Stone. Você está pairando sobre um cartão, e você vê instantaneamente que este é um lendário ou épico ou apenas um cartão comum por seu brilho , que você
possa entrar e escolher uma cor para cada uma dessas categorias. Eu acho que eu escolher todas essas cores eu mesmo, mas para cada uma dessas cores, você não tem que esquecer de trazer o Alfa todo o caminho para cima. Caso contrário, esses objetos que você mostrará os brilhos, eles só serão transparentes. Então traga o Alfa até 255 para ter certeza de que seus brilhos não são transparentes . Então eu selecionei essas cores para globos. Nós também temos outra opção interessante que tem dar pelo menos um cartão raro. Assim, as cartas que você recebe de PACs, eles são sempre gerados aleatoriamente, e se você quiser incentivar seus jogadores e dar-lhes pelo menos um cartão que é raro ou fora maior, raridade. Mas então você pode habilitar esta marca de seleção e dizer, Dê pelo menos um cartão raro. Você também começa a controlar as probabilidades de obter cada cartão, de modo que a probabilidade lendária deve ser a mais baixa. Mas apenas por uma questão de teste, queremos obter lendário é mais frequentemente assim. A proporção de obter cartas raras ou épicas lendárias deve ser algo como isso. Tão lendária é as taxas mais baixas épicas, um pouco mais altas e
raras, a maior probabilidade percentual de obter um cartão raro. Nós também temos essas referências soletrado guarda de volta prefab e vai fazer isso mais tarde. Ou usaremos um resumo pré-feito, mas discutiremos como isso é feito com nossos pacotes. Nós temos apenas um pré-fabricada porque nosso pacote é apenas algo que se parece com um verso de cartão, e ele não tem nenhuma variação. Mas uma vez que você começa a abrir os pacotes, você pode obter um card de mágica ou um card de criatura, pelo
menos em nosso projeto. Então devemos ter pré fabs para todos eles, e devemos verificar se geramos um feitiço ou uma criatura e, em seguida, baseado nisso. Mas em vez disso, ela comeu um card de mágica ou um card de criatura. Nós também temos referências a esses dois botões. Um deles é chamado de botão Concluído, então o botão feito é o fundo que aparece Depois de ter arrastado o pacote
daqui para a sua área de abertura do pacote, você clica na parte de trás. Você recebe cinco cartas geradas na parte de trás. Você abre cada um desses guardas, e só então o botão pronto aparece, e somente depois de pressionar o botão pronto você pode voltar. Então isso garante que você não pode sair desta tela e que você não pode deixar seu pacote aberto, por assim dizer. E o botão de trás é algo que o verá bem aqui no canto. E você pode pressionar o botão Voltar para voltar ao menu principal e ocultar a
tela nítida . E a última coisa no roteiro que não cobrimos. Agora é esta matriz nos slots finais para cartas, e este raio deve realmente ter cinco elementos porque nós ar gerando cinco cartas de nosso pacote, e estes são os lugares onde você quer que esses cartões para gerar ou para acabar se eles classificar voar para fora da matilha. Assim, como uma criança fora da nossa área de abertura, vou clicar com o botão direito do mouse em criar um objeto de jogo vazio. Vamos chamar isso de um slot e Al, basta ler duplicatas deste jogo. Objetos de óleo, pressione control de control de até que eu tenha cinco deles e, em seguida, com isso ,
também, Eu posso colocá-los na parte de trás, por exemplo, assim. Este pode ser colocado aqui. O 3º 1 pode ser colocado aqui, e estes dois podem ser colocados aqui na parte inferior da tela. Mais tarde. Você realmente reajusta as posições desses objetos, mas pode ser bem preciso. E só por causa dos testes, isto pode bastar para que eu volte para a minha área de abertura. Na verdade, há uma maneira mais fácil de operar esta corrida para que eu possa mudar seu tamanho de volta para zero. Eu posso trancar o inspetor só para que ele não seja trocado por outra coisa. Se selecionarmos alguns outros objetos na cena, selecionarei todos esses slots e os rastrearei no nome de nossos slots de array para cartões. E uma vez que eu solte vocês, veja que este raio é preenchido com esses objetos, que é muito conveniente, eu acho, e apenas para resolver tantos problemas quanto pudermos neste vídeo. Vamos também criar vários botões. Então, como uma criança fora da nossa tela, conteúdo para ter um fundo que também precisa de uma tela. Então eu estou criando em você tela, desbloqueando o inspetor aqui eu estou mudando para o espaço mundial. Estou mudando sua posição 200 só para nossa conveniência. E eu estou mudando sua escala para algo muito menor como 0,1 na verdade, um, é muito pequeno. Então vamos com 05 talvez aqui e 05 aqui também. Então podemos mudar a largura e o alto para controlar seu tamanho. Então eu acho que algo apropriado para um botão será isso. E então, como uma criança desta tela, posso ir até você e criar um botão. Eu sei que você não é capaz de ver este menu, mas quando eu vou para você, eu estou selecionando seu fundo aqui. Então este botão, é atualmente muito pequeno e queríamos ocupar todo o espaço da nossa tela assim. Nós também vamos mudar o tributado. Então vamos dizer que estamos fazendo um botão pronto agora, então vamos fazer este imposto dizer,
Don, Don, mudar nosso telefone para lavagem de defesa e podemos controlar o tamanho do texto nesta parte inferior manualmente. Então também podemos mudar o sprite nesta parte inferior. Então este é um procedimento bastante padrão que Ugo mais com cada fora de nossos botões e mais tarde você também pode adicionar um quadro. Na verdade, vamos adicionar um quadro agora, então vou adicionar outra imagem no topo do botão. Eu vou fazer isso se estender por todo o fundo, e então eu vou e vou selecionar um dos quadros que temos aqui, por exemplo, este. Ou vamos usar este porque é nove fatiadas. Então eu selecionei este quadro nove fatiado e este será o fundo que será gerado . Na verdade, talvez seja gerado aqui no centro, e não preciso esquecer que é uma criança da tela. A tela é o espaço do mundo, então temos que mover este fundo junto com a tela. Vamos renomear esta parte inferior para o nosso botão feito como este, e nós também queremos criar outra garrafa como esta então eu vou apenas copiar esta tela Bush Control de aqui e este filme botão localizado aqui no canto em vez de feito isso deve Diga de volta. Então eu vou mudar seu nome para trás Botão A aqui, e eu vou mudar o texto neste botão para dizer de volta assim, e eu vou ajustar a posição fora deste fundo apenas um pouco como este. Por enquanto, nós devemos ter em Lee a parte de trás sobre invisível, então eu vou desativar nosso botão feito e nós podemos estabelecer algumas conexões desta vez em nossas áreas de
abertura, então ele deve ter uma referência ao nosso fundo feito, que é este. Também deve ter uma referência ao nosso botão Voltar, que é este. Portanto, as duas únicas referências que deixamos de fora por agora são o card de mágica da Embalagem e o Card de Criatura da Embalagem. E na tela da nossa loja. A única referência que deixamos de fora é o nosso pacote pré-fabricado e também a área de abertura que
acabamos de fazer. Então vou arrastar a área de abertura, e desta forma a parte de trás será a única referência que deixamos de fora por enquanto. Então, na próxima palestra vai falar sobre todos esses objetos o prefab volta, o guarda pré fabs. As cartas que recebemos de nossos pacotes e esperamos que em uma ou duas palestras cheguem a experimentar e abrir alguns pacotes. Muito obrigado por assistir, e eu vou te ver na próxima palestra.
12. 305 - Ajustamentos de tela de abertura e visão geral da arrastamento: Olá, todo mundo. E bem-vindo de volta ao curso Agora, antes de discutirmos o cartão volta pré-fabricada. Eu queria fazer alguns ajustes rápidos na cena do crime. Então, fizemos vários botões. O botão concluído que está invisível no momento. O botão “Voltar”. Queremos criar mais um, e eu esqueci disso. Mais um botão servirá para nós como um botão BIPAC. Então, quando pressionamos este botão, nosso jogador vai comprar um pacote. Vou expandir a tela da loja de novo. Encontre a tela fora, um fora dos nossos botões. Vamos ter este. Aquele que diz que vou criar uma duplicata desta tela e agora posso arrastá-la até aqui. Eu acho que ele vai ser localizado aqui e eu vou redimensionar este botão e eu vou mudar o texto para ver por assim e outra correção que eu queria aplicar é para esta área. Tenho uma coisa que não é 100% precisa. Então, atualmente, se selecionarmos este outro para que marca a posição fora de nossos objetos de jogo no espaço. Nossa área aberta está localizada aqui, e eu queria este objeto de jogo. O pai para pacotes a serem localizados aqui no centro do nosso painel tipo de que serve como um fundo para nossos novos pacotes. Então, a fim de fazer isso, eu vou ajustar a posição deste por Sprite escolha livre. Vou colocá-lo em zero em X X é e esta posição inicial de volta. Acho que já está localizado corretamente. Então é onde nossa área de pacote fechado está agora. Vou pegar isso na área de matilha aberta e trazê-lo aqui. E eu também acho que vai trazer esta área um pouco mais alto e vai fazer o fundo para nossos pacotes um pouco menor em que é por isso dimensionado. Então eu controlo a escala Y. Então agora nós consertamos um par de coisas na tela da nossa loja e eu queria ir e mostrar-lhe o que é este prefab volta que vai criar na tela da loja? Portanto, este campo em nosso gerente de loja está atualmente vazio. Vamos para ativos pré fabs menu pré fabs. Então, tudo o que vai insano que ela comeu e criar neste curso está localizado em nosso menu. Breve. EPPS e todos esses outros pré fabs lá os prefeitos que são usados na cena de batalha. Às vezes eles são muito úteis para criar os prefeitos de menu porque os cartões, eles vão olhar o mesmo no menu. Mas os scripts nos cartões, eles serão diferentes. Assim, as cartas no jogo, as cartas no menu e até mesmo as cartas que mostramos no PAC abrindo seus objetos de jogo antigos e
diferentes. Então todos eles têm um roteiro diferente. Os antigos têm que realizar tarefas diferentes. Então, dentro do menu de pastas pré fabs Vamos encontrar o pacote prefab e trazê-lo para a nossa cena para que possamos estudar e descobrir como ele é feito imediatamente. Eu acho que há algo de errado com a escala fora de todos os objetos na minha cena, porque na cena que foi usado no projeto inicial, os pacotes eles pareciam muito menores. Então o que Eu verificar com a minha cena de menu anterior e corrigir a escala nesta cena, e isso provavelmente envolverá a fixação do ângulo de perspectiva das câmeras principais. Então eu verifiquei com minha cena do menu, e uma das coisas que não estava funcionando para nós é que nós criamos essa cena do zero e a câmera foi definida por padrão como gráfico Ortho, e neste caso, queremos ainda Mantenha a câmera de perspectiva. Não vai desempenhar um papel importante na cena. Então eu estou mudando isso para perspectiva, e a rivalidade de vocês será definida como 65 como na minha cena anterior. E também, eu não tenho exatamente certeza de como esta câmera foi posicionada, então eu vou voltar com
a minha cena anterior, aquela que está fria, muitos vistos. Vamos salvar as alterações. Confira a câmera e a câmera naquela cena foi posicionada em menos 14 extremidades coordenada. Então eu estou voltando para o menu, visto curso, selecionando minha câmera principal e falando menos 14 como um deslocamento no set. O Gordon. Então agora temos esta pré-fabricada de volta que eu pré feito em escala correta, que é apropriado para o nosso visto. Tudo o resto é, ah ,
mudança, mas é muito fácil de consertar, e é ótimo que tenhamos notado isso em um estágio tão inicial. Então eu vou mudar a escala do fundo para Dubai para esta forma, ele vai novamente ocupar todo o período fora são vistos e também terá que inspecionar nossa
tela afiada novamente. Então, na tela afiada. Vou clicar duas vezes no conteúdo da tela. Está tudo deslocado e na posição errada. Agora, eu acho que vai ter que dizer esta textura de mármore para aparecer por trás de tudo. Então eu vou dar uma ordem em camada off, menos 20. Voltem a esta cena. Agora podemos ver nossos botões, este pequeno painel onde nossos pacotes aparecerão e podemos reajustar tudo novamente. Então eu vou para o conteúdo da tela. Selecione a nossa área traseira aberta. Ajustaremos este sprite. Deve ser maior em escala X e por que escala? Então vou pegar nossa área fechada e mudar sua posição. Faremos com que apareça aqui e um pouco mais alto, acho que algo assim. Então eu vou pegar nosso botão que é responsável pela compra de pacotes. Eu também vou mudar sua posição na coordenada X e em coordenadas por que para que ele apareça abaixo deste pedal. Eu poderia ir para a cena, selecionar isso também, e torná-lo para que este ponto em tem aproximadamente o mesmo com o nosso painel para pacotes e
torná-lo um pouco mais alto. E eu também terei que reposicionar nosso botão de volta. Então vamos fazer isso o botão Voltar aparecerá aqui neste canto. Vamos voltar ao jogo e verificar se esta posição é apropriada. E eu também acho que esses slots que fizemos em nossa área de abertura eles podem ser reposicionados também. E, na verdade, o botão feito. Assim, o botão feito deve aparecer aqui no centro, e esta perda deve ser organizada em torno deste botão feito. Então este deixa localizado aqui este próximo slot aqui, estes mais baixos. Acho que podemos deixá-los como estão agora, exceto por este e o de cima. A ranhura de cima. Vamos fazer com que apareça aqui e acabe com o botão feito, e é isso. Então, podemos finalmente inspecionar como nosso pacote de cartas é feito, e o verso do cartão é um objeto de jogo muito simples. Parece que o cartão de volta no jogo, e você pode realmente fazer pacotes de cartas diferentes para o seu jogo em nosso jogo terá apenas um que se parecerá com o verso do cartão que usamos na cena de batalha. Então, a fim de conseguir isso, eu posso simplesmente pegar qualquer um dos cartões de nossa pasta Prefects, os cartões que usamos no jogo ou há este objeto de jogo necessidade que é chamado cartão de volta para que eu possa apenas usar isso e parented para um objeto de jogo vazio. E então eu mudei a escala deste objeto para dois em X e y direções, então o verso do cartão não precisará disso na cena. E a próxima coisa que eu queria discutir são os roteiros que estão anexados ao nosso pacote. Um dos componentes é o colisor de caixa, e precisamos deste colisor de caixa para ser capaz de arrastar o pacote e para ser capaz de detectar cliques no pacote. E há vários roteiros. Um deles chama-se Drag a Ble. Ele é usado no jogo também, eo outro é chamado Drag Pack, abrindo a maneira que eu fiz arrastando neste jogo, Eu quebrei em dois componentes diferentes. O script chamado Arrastar um ble. Deixe-me abri-la e mostrá-la para você em desenvolvimento mono. Agora que Mona Develop é open drag, um ble é um script muito básico que nos permite arrastar qualquer objeto do jogo, então vamos arrastar cartas na cena de batalha e no menu visto. A única coisa que vai arrastar é a matilha. Outro componente que é necessário para arrastar neste projeto é um script off type arrastar ações, e é uma classe abstrata,
portanto, pode haver muitas outras classes de tipo arrastar ações, e ele define o comportamento de arrastar. Então, o que você quer fazer quando começar a arrastar esse objeto? Talvez você queira mostrar algum efeito de partícula, ou talvez você queira tocar um som ou fazer outra coisa. Então este método é responsável por isso. O que você quer fazer quando terminar de arrastar? Agora, este é um momento muito responsável. Então, quando você realmente liberar o objeto que você está arrastando, você deseja que alguma ação aconteça. Por exemplo, talvez você queira que uma criatura ataque outra quando você está arrastando um alvo no jogo,
ou, no nosso caso, quando estamos arrastando nosso pacote, queremos que ele fique com nosso pacote área de abertura e para mostrar a abertura traseira assim por diante E arrastar também é método muito importante nesta relação. Ao arrastar em atualização agora, Ele não será usado para o nosso pacote, eu acho. Mas se você quiser fazer algo continuamente quando você estava arrastando como,
por exemplo, por exemplo, em nossa cena de batalha, nossos ataques de criaturas usaram esse método. Então, quando estamos arrastando nossa criatura em atualização, a criatura está realmente permanecendo no lugar. Mas estamos arrastando um Aiken especial que chamamos de alvos ou sistema de alvos. E em atualização, mostramos a linha renderizar a linha que conecta nossa criatura e o alvo para que tenhamos alguma representação visual de nosso ataque. E aqui também temos várias propriedades auxiliares e métodos que são usados principalmente na cena de
batalha. Acho que isso não vai usá-los tanto para a nossa matilha. Então, agora, se estamos voltando para o nosso script potável, temos em milhas para baixo método, então este método irá detectar o clique inicial no colisor. Nós também temos nosso método de atualização. É o lugar onde vamos chamar d a sobre arrastar em atualização e nosso próprio mouse para cima método. E este é o lugar onde nós realmente paramos de arrastar o objeto. Estamos liberando o objeto e estamos fazendo algumas ações finais e decisões sobre o que aconteceu como resultado do nosso arrasto, há também esses métodos começam a arrastar cancelado arrasto. E a parte importante é que quando você está arrastando um objeto como este, você também tem que ter em mente que você tem que recalcular sua posição mais, dependendo de quão longe isso está da câmera. Então, há esse deslocamento definido que a distância inicial nessa coordenada da câmera e você tem que recalcular o mouse nas coordenadas do mundo para que seu objeto mantenha uma certa posição da câmera. Caso contrário, você está arrastando não funcionará corretamente. Então eu vou deixar você para estudar este roteiro de luta porque ele foi usado em nossa
cena de batalha e há muitos exemplos diferentes.
13. 306 - Scripts personalizados para Dragging e abertura de pacotes: e o script de cinco ações de arrastar que usamos para o nosso pacote é chamado Drag Back Opening. Como você pode ver aqui, nós não herdamos de um comportamento. Em vez disso, herdamos de arrastar ações. Isso significa que temos que implementar todos esses métodos abstratos. Então, se houvesse um método abstrato em arrastar ações como em Star Trek on e Drag, absolutamente sem, qualquer implementação terá que implementar este método. Em nosso script de abertura de drag pack, estamos até redefinindo. Algumas das propriedades como esta podem arrastar, e também podemos definir alguns campos personalizados que serão usados em Lee por este script como este . Cancelamento booleano, movimento
booleano ou atingiu o ponto de abertura. Então estas são as coisas que são apenas específicas para este script de abertura drag back. Agora podemos arrastar nosso pacote se a área de abertura da instância do gerente de loja, que é nosso script de área de aberturas que ainda não vimos, diz permissão para arrastar um pacote. Portanto, é uma propriedade que nos dirá se temos permissão para arrastá-lo de volta ou não, e as situações em que não temos permissão para arrastar um pacote é, por exemplo, quando já estamos abrindo um pacote, então não queremos ser capazes para arrastar outro pacote para as áreas de abertura. Então, quando você está no meio da abertura traseira, você não quer ser capaz de abrir outro pacote. Além disso, se não estamos cancelando, então cancelar é algo que pode acontecer se você arrastar seu pacote. Mas você não atingiu a área de abertura traseira, então você não arrastou para aquele colisor da área de abertura do pacote que
introduzimos na cena. Então o que deve acontecer é que seu pacote deve apenas retornar à sua posição original, que estamos armazenando neste setor privado três posições de segurança variáveis, e nós também temos permissão para arrastar para trás apenas se ele não estiver se movendo ou se não tiver atingido o lugar de abertura já. Então, se você arrastar um pacote, solte-o em cima de sua área de abertura e ele fica meio atraído para o centro fora da área de abertura traseira. Então você não é mais capaz de arrastar isso para trás e arrastá-lo para fora da área de abertura, então você só pode pressionar os botões e experimentar a abertura de volta. Vamos rever os métodos nesta classe. Então, no início do arrasto, estamos salvando a posição do nosso pacote apenas para que possamos devolvê-lo à sua
posição original . Se o nosso arrastamento não resultou em trazer isso de volta ao topo da nossa área de abertura, também
dizemos instância do gerente de loja, área de
abertura permitida para arrastar para trás é igual a false. Então, se tivermos arrastado isso de volta para algum lugar, significa que não temos permissão para arrastar outros pacotes até
abrirmos essa volta que começamos a arrastar. Então isso é apropriado. Em seguida, temos o método de arrastar na atualização e aqui não estamos fazendo nada quando estamos arrastando na atualização por isso é apenas um método vazio e arrastar. Estamos a verificar se as drogas têm sucesso. Penso que este método também é redefinido aqui. Então arrastar é bem sucedido se tivermos o nosso cursor sobre a área de abertura do pacote. Então, se soltarmos a parte de trás em cima da área de abertura do pacote, consideramos o arrastamento bem-sucedido. Então, verificamos se o nosso arrasto é bem sucedido. Então faremos isso. Transformamos, que é a nossa matilha. Nós movê-lo para a nossa loja gerente Instância abertura posição transformada. Então, se o Pac foi liberado em cima da área de abertura dos fundos. Fazemos este pequeno Tween com entre que irá movê-lo para o centro, fora da nossa área de abertura do pacote em completo. Estamos recebendo outro componente de script que está anexado ao nosso pacote, que é script ouro para abrir um pacote e dizemos permitir abrir isso antes de
não termos permissão para abrir o pacote. Se você não o arrastou para a área de abertura, isso significa que você não pode experimentar a abertura embalada ainda. E quando tivermos certeza de que essa parte traseira chegou à área de abertura do pacote, isso significa que podemos clicar na parte de trás uma vez, e veremos todos os guardas gerados do pacote e mais. Então, se o nosso arrastamento não foi bem sucedido, então chamamos o método em cancelar arrastar e aqui, em arrasto conselho vai dizer aconselhamento True. E o objetivo é não permitir arrastar quaisquer outros pacotes. Então dizemos transformar fazer movimento local. Então nós movemos isso de volta para sua posição original na área traseira fechada, e quando esse movimento estiver completo, dizemos que cancelar é igual a falso. Então, agora que cancelamos essa ação, estamos prontos para arrastar outros pacotes ou isso de volta novamente. E também dizemos instância gerente loja, área de
abertura permitido arrastar uma verdade pacote. Então, temos permissão para arrastá-lo de volta novamente. Se arrastamos a parte traseira com sucesso para a área de abertura do pacote, então diremos esta instância do gerente de loja. Área de abertura permitido arrastá-lo de volta mais tarde em Lee depois que a parte de trás é aberta, e temos pressionado esse botão feito. Então é assim que nosso script de arrastar pacto funciona em geral e o que ele faz. E se voltarmos para a unidade, há outro componente que é chamado Script para abrir um pacote que está anexado ao pacote também, e tentamos acessá-lo em nosso script de abertura drag back. Então vamos clicar duas vezes sobre isso e inspecionar como isso parece em Wanna desenvolver para que ele tenha vários campos
públicos. O 1º 1 é a imagem de brilho e a cor de brilho. Então, quando estamos pairando sobre um pacote que já está em cima da nossa área de abertura do pacote, queremos mostrar um pouco de brilho quando entramos no cursor apenas para indicar que
somos capazes de abrir esta volta, Então é isso que fazemos aqui. Temos um booleano privado permitido abrir e este método permitiu abrir esta volta que define permitido abrir para tropas nesta classe. Ele também tem acesso ao colisor de caixa que temos anexado a esta volta. E precisamos disso para que possamos detectar. Em vez disso, nossos jogadores estão pairando sobre este pacto com seu cursor ou não. Então, de certa forma, qui se c u l equivale a obter colider caixa de componente No método permitido para abrir isso de volta o que é chamado de nossa abertura de arrastar e arrastar aqui você está recebendo o componente e chamando o método permitido abrir isso de volta, dizemos que permitido abrir é igual verdadeiro gerente de loja Área de abertura da instância permitido arrastá-lo volta. Dissemos para falso de novo. Eu acho que esta linha pode não ser necessário porque já dissemos que também cai em nossa abertura
drag back. Mas por que não? Só vai dizer que também cai de novo. Você também diz gerente de loja Instância abertura área de fundo. Então, estamos acessando o fundo que pode retornar está de volta ao menu principal e dizemos Interact , herbal é igual a false, que tipo de desativar este botão. E isso não nos permitirá pressionar este botão até que tenhamos experiência a
abertura do pacote completo . E também verificamos se o cursor está sobre uma parte de trás, que é este método neste vidro, dizemos que ponto de imagem de brilho do colarinho, que também é um método entre e para usar entre. Nós também incluir este usando instrução usando D g geminação, e ele vai mudar a cor da imagem brilho para chamar brilho em meio segundo neste cursor
método sobre um pacote. Nós fazemos alguns raios de fundição porque Ray da câmera em nossa posição mais, o comprimento do raio será 30 f, então será muito mais do que o nosso menos 14. Distância desligada, as câmeras vão direto através do pacote. E este código foi realmente retirado de outro método que estava gerenciando se nosso cursor está sobre a tabela, então eu ainda tenho um nome antigo aqui lingotes passado através de Table Collider. Mas isso realmente significa que a taxa de lançamento passou através do colisor em nosso pacote Então, para cada lançamento de raios bateu em hits apenas no caso de acertarmos algo mais bem, nós também estamos verificando se h ponto colider é igual a dois c o L. colider em nosso pacote que passamos através da tabela Collider, que
significa que passamos através do colisor em nosso pacote e retornamos este valor passado através da tabela Collider e, finalmente, estes dois métodos no mouse enter. Se tivermos permissão para abrir a parte de trás, devemos destacar essa volta com colarinho, então fazemos a mesma coisa. Imagem brilhante Do colarinho brilha 0,5 F em 0,5 segundos. Mudamos a cor da imagem de brilho para cor brilhante na saída do mouse. Nós mudamos o colar de volta para este valor interessante colarinho ponto claro e cor ponto claro é uma cor 100% transparente. É uma cor preta, eu acho. Com o valor off Alfa definido para zero, a imagem de brilho da hora irá desaparecer gradualmente. E neste método todos os quilômetros abaixo, é
aqui que toda a ação acontece. Então, se nos permitirem abrir isto de volta, que
significa que esta volta tem todo o caminho para o centro da nossa área de abertura da matilha. Ele é destacado com cor, modo que a imagem brilhante mostra um certo brilho ao redor do pacote. Se estamos pressionando sobre esta volta com o nosso mouse, então nós dizemos permissão para abrir igual a falso para que não estamos autorizados a abrir isso novamente . Assim, algumas pessoas podem clicar duas vezes no pacote e começar a embalar aberturas ao mesmo tempo. Então nós não queremos que nós estávamos configurando permissão para abrir falso. Então só podemos abrir isso uma vez, depois no meio. Você também pode inicializar Interpolações em uma chamada sequência. Então você diz que a sequência s é igual entre a sequência de pontos e, em seguida, você pode adicionar interpolações à sequência dizendo como ponto upend. Então, o primeiro desmame que estamos adicionando à seqüência é fazer movimentos locais em que apenas irá levantar isso de volta acima da nossa área de mesa ou área de abertura do pacote. Outro entre isso, estamos adicionando à sequência. Este é um? Faça rotação de agitação e você pode jogar com todos esses parâmetros. Então, quando você está abrindo um pacote, ele vai saltar da superfície da mesa, por assim dizer, e ele também vai tremer para mostrar algum efeito gráfico na abertura traseira. E, em seguida, aqui em completo, dizemos Gerente de Loja Instância Abertura Área Show Pack abertura nesta posição. Então, onde esta parte de trás está atualmente, mostrará a abertura do pacote. Nós também dizemos que a instância do gerente de loja backbacks criado menos. Então estamos subtraindo um pacote. Nós já abrimos. Portanto, se o jogador sair do jogo, ele não deve mais receber isso de volta em seus pacotes salvos. E uma vez que tudo isso é feito, nós também estamos destruindo este objeto do jogo. Então todo o objeto da matilha. Ele só é destruído. Já fez tudo o que tinha de fazer. Todo o resto será feito neste método abertura área show pack abertura. Este é o lugar onde as cartas serão selecionadas e a instância que ela fez, então a parte de trás já serviu o seu propósito. E agora podemos apenas destruído neste método mostrar volta abertura. As cinco cartas aparecerão na parte de trás, e o jogador vai começar a entregá-las e ver o que ele tem em sua coleção. Obrigado por assistir a história para uma palestra tão longa, mas é meio importante para entender como os pacotes funcionam como arrastar funciona no jogo se você vai inspecionar a cena de batalha e tentar mudar algo lá também. Então, na próxima palestra vai dar uma olhada em dois outros breve, talvez o pré fabs fora dos cartões que recebemos do pacote. E eu acho que no final da próxima palestra ou a palestra depois disso, nós vamos realmente começar a testar a abertura do pacote e colocar alguns cartões em nossa coleção. Muito obrigado por assistir, e eu vou vê-lo na próxima palestra.
14. 307 - Prefabs de criatura e cartões de feitiço de valia de pacotes: Olá, todo mundo. E obrigado por assistir as pontuações votar fazendo menus para o seu jogo de guarda comercial. Nesta palestra, eu queria mostrar a vocês como as cartas que recebemos dos pacotes são feitas, e felizmente temos um exemplo. Então, mas não só temos esses cartões pré-configurados, mas também temos os pré fabs fora dos cartões que usamos no jogo. Então vamos conferir nosso card de criatura que usamos no jogo. Tem uma escala diferente, mas não importa muito porque podemos facilmente consertar a escala. E a parte mais importante para nós são os scripts que usamos nos cartões. Então aqui está o nosso card de criatura, e aqui está o nosso card de mágica, e nós também temos a pasta com o breve menu EPS, e aqui temos o nosso deixe-me encontrar aqueles card de mágica do pacote. Há um, e também temos nosso card de criatura de volta. Há o 2º 1 e eles estão ajustados para a rotação 180, podemos girá-los facilmente. Podemos ver que o script que mostra as costas das cartas e as faces do carro ainda está no cartão, e ainda está funcional, então vamos verificar como esses guardas são diferentes dos que temos no jogo. O óbvio é que eles estão ajustados para uma escala diferente para que eles combinem com a escala do nosso pacote na cena do menu. Esse é um, e eles também diferem pelos scripts que eles têm no cartão. Então, no nosso jogo temos alguns scripts que são semelhantes. Então, por exemplo, temos a melhor rotação do cartão. E este é o script que cuida,
mostrando o verso do cartão ou a face do cartão, dependendo de como o cartão é girado. E nós tivemos que fazer isso funcionar porque nossos cartões, eles não são três objetos D. Eles usam telas. Então temos que descobrir isso de alguma forma e mostrar o verso do cartão ou a face do cartão para este script funcionar e para outros scripts funcionarem. Também temos o Colisor de Livros no nosso cartão, e não é o dever do Colisor de Livros. Então o cartão, mesmo que seja como um objeto de dever, estamos tratando-o como se fosse um objeto de três D. Temos um colisor de caixa no cartão que é muito fino. É apenas 0,1 no tamanho Zed. Esse é outro componente que temos nos guardas tanto no jogo quanto nos menus. O próximo componente é chamado Juan card manager, e temos usado muito no curso onde discutimos a mecânica de batalha. Essencialmente, este componente cuida, está esfolando seu cartão e mostrando as informações corretas. Corrija imagens no rosto do seu cartão. Então ele tem referências a todos os impostos, todos os elementos gráficos no cartão, e ele leva em um ativo cartão. Então ele toma em como todas as informações que podemos passar para o nosso cartão, e ele ajusta o cartão de acordo. Então ainda vamos ter isso em nossos cards de criatura e mágica no menu. Sirva como você pode ver Box Collider, um gerenciador de cartão, Melhor irritação cartão. Então estes são todos os componentes comuns no jogo. Nós também temos vários outros componentes, como temos que ser capazes de arrastar esses cards para que tenhamos arrastar uma mágica dreck ble nenhum alvo. Estes são os roteiros. Há semelhantes aos scripts de arrastar que vimos para o pacote, mas para as cartas que recebemos do nosso pacto. Não precisamos de nada disso. Então, basta clicar no pacote. Os cartões aparecem e não foram autorizados a arrastá-los. Temos que virá-los,
virados para cima e ver o que temos. Portanto, não precisamos dos scripts de arrastar e você não vai encontrá-los em nosso card de criatura do
verso e card de feitiço do pacote pré fabs. Outra coisa que nós não precisamos deles este componente, Onde está o card ou criatura que é usado para resolver os problemas de ordem de classificação na cena de
batalha e também este componente que é chamado de visualização pairar. Então, na cena da batalha, queremos passar o mouse sobre o cartão e queremos ver assim ter explodido e mostrado mais perto de nós para que
possamos selar as imagens e ler todos os textos. E nos muitos vistos para a abertura do PAC. Nós não precisamos que esses recursos estejam presentes em nosso cartão, então as cartas são realmente muito mais simples, mesmo que eles tenham alguns componentes comuns neles com nossas cartas de jogo. E é um bom exemplo de reutilização do código que você tem para que você não precise montar nenhum script
personalizado. Você só usa o máximo de coisas que puder da cena de batalha, também. Implemente seus cartões de menu, e o único componente que é novo para nós é este virado sobre um cartão para impacto. Tem referência à imagem de brilho no cartão. Então, tanto para a criatura guarda de volta nas firmas para o card de mágica de volta. Temos referências à sua imagem brilhante porque queremos mostrar esta cola quando estamos pairando sobre o cartão. Agora deixa-me abrir a Mona, desenvolver e mostrar-te esta nova carta do guião do pacote. E agora que Mona Develop abriu, todos
podemos ver que o Stripped é muito simples, muito trivial. Aqui está a nossa referência de brilho de imagem pública. Temos uma escala inicial de flutuação privada. Então, quando passamos o mouse sobre uma carta, ainda
queremos jogar com a balança para que quando você passar o mouse sobre, a carta fique um pouco maior. Então, para esse propósito, salvamos a escala inicial fora do nosso cartão porque o cartão é unificado formalmente para que
não tenhamos qualquer distorção apenas na escala. Então o valor auto zed Por que uma escala ex são as mesmas que a escala inicial. Podemos apenas salvar qualquer um dos valores da escala local podemos dizer transformado
escala local ponto Exe. Também temos essa variável que é chamada de fator de escala e é apenas predefinida para 1.1, e representa a quantidade que fará nosso cartão maior. Quando estivermos pairando sobre a carta, faremos esse efeito. Quando estivermos pairando sobre o guarda com o cara mau, veremos isso em alguns segundos. Nós também temos essa variável que é ir booleano privado virado para cima para que nós não queremos
virar as cartas duas vezes ou retornar a parte de trás. Então temos que manter isso memorizado em algum lugar quando entregamos um cartão do pacote. Se voltar a conduzir fracamente, não
queremos que faça outras ações. Por isso, já foi virado e também temos uma referência ao nosso gerenciador de um cartão
que seja gerenciador de frio. E acho que estamos usando no Lee para descobrir as cartas. Raridade. Então, através do nosso gerenciador de um cartão, temos acesso ao ativo de cartão que este cartão tem neste cartão representa, e os ativos do cartão armazenam as informações sobre raridade. Então é isso que estamos usando este quatro. Vamos percorrer todos os métodos acordados. Estamos salvando a escala inicial deste cartão. Então vamos ter o nosso gestor de um cartão. E, em seguida, vamos olhar para esses métodos primeiro na maioria entrar e possuir mais saída. Então, quando estamos entrando neste cartão com nosso cursor, estamos primeiro dizendo Transformar ponto fazer escala. Então, estamos usando entre e esta função fazer escala. Ele vai mudar a escala fora do nosso cartão uniformemente para X vinhos que escalas será igual a esta escala inicial multiplicado por fator de escala. E ele vai fazer isso em 0,5 segundos e em seguida. Neste método, também
vamos mudar a cor desse brilho ou apenas mostrar o brilho. Então estamos dizendo brilhar fazer colar, e para encontrar a cor que precisamos, temos que percorrer um longo caminho que passamos por nosso gerente de loja. Instância porque nosso gerente de loja é um singleton. Nós vamos para o nosso script de área de pacote de abertura que vai olhar em nosso próximo palestrante. Acho que dizemos cores glo por raridade, e esta é a matriz, onde armazenamos todas as cores Glo para o lendário Xray, onde estão os épicos e assim por diante? E porque é um dicionário, você pode usar essa sintaxe estranha. Nós temos os colchetes aqui e como um índice, espécie de. Podemos usar um valor fora da raridade em nosso cartão, então é uma raridade de ativo de cartão de gerente, e isso nos dará a cor correta que queremos usar para o brilho deste cartão. E estamos mudando a cor de brilho em 0,5 segundos na saída do mouse. Só estamos fazendo o inverso. Então, estamos mudando a escala de volta para a escala inicial fora da cicatrizada, e estamos mudando a cor do brilho para o chamador claro. Então a cor que é 100% transparente. Então, quando fizermos isso, você não verá mais o brilho. E finalmente, o método a milhas abaixo. E é um bom truque que você pode fazer. Você está verificando se este cartão foi entregue e, em
seguida, devolva. Portanto, se este cartão já estiver virado, não
nos importamos se o usuário clicou neste cartão novamente, e não precisamos tomar nenhuma ação. Então, se virado já é verdade. Então nós apenas retornamos e não fazemos mais nada neste método. E se virado, é falso. A primeira coisa que fazemos é definido virado para verdadeiro para que não possamos entrar neste método novamente. Então dizemos transformado. Fazer girar estavam girando o cartão para Vector 30 de modo que ele está enfrentando Nossos usuários virados para cima em 0,5 segundos e nós também dizemos instância gerente loja. Número de área de abertura fora cartões abertos a partir de trás mais. Mais esta linha. Vamos nossa área de abertura saber que entregamos mais uma carta. E quando viramos todas as cartas que temos do pacote o fundo vai aparecer que vai dizer feito e estamos Preston. Podemos agora ou voltar deste homem, você ou podemos dragão abrir outra matilha. Então é assim que este script funciona. Eu acho que na próxima palestra vai tentar estabelecer todas as conexões em unidade e finalmente, verificar como funciona a abertura do pacote. Muito obrigado por assistir, e eu estou ansioso para vê-lo no próximo vídeo e finalmente mostrar-lhe a
aberturade trás abertura
15. 308 - Conectando tudo em Unity e Testando a abertura de pacotes: Olá a
todos, todos, e bem-vindos de volta ao curso. Assim, na palestra anterior que temos tomado, uma olhada nas cartas vai obter de pacotes irá gerá-los. Quando a matilha está aberta e meio que explodiu. E esses cartões que servirão apenas um propósito, seremos capazes de entregá-los e mostrar aos nossos jogadores. O que eles conseguiram da matilha? Então, os pré fabs são bastante simples. Eles usam a maioria dos componentes que já tínhamos em nossa cena principal do jogo. Os livros Collider. Um gestor de cartas. Melhor irritação do cartão. O único que é fazer Você é cartão de rotatividade de Pack, e você já viu isso. Então agora nós não precisamos desses cartões pré fabs em nossa cena, então eu vou apenas selecionar todos eles, tanto os muitos e os jogos e Al apenas
excluí-los . Então teremos que encontrar o roteiro que requer essas conexões com nossos pré fatos. Acho que pode ser a tela da nossa loja que tem que ter uma referência ao nosso pacote pré-fabricada . Então vamos estabelecer que temos o pacote pré-fabricado na cena. Nós que não precisávamos tão bem, então eu posso apenas liderá-lo. Vá para os meus bens. Breve pasta APS. Todos os pré fabs para os muitos cavalos são armazenados no menu de pastas pré fabs, e aqui temos o nosso pacote prefab. Então eu vou para a tela da nossa loja e arrastar o nosso pacote pré-fabricado para este campo que diz, Voltar pré-fabricada. E também terei que encontrar o script que é a área de abertura do pacote frio, e ele deve ter referências ao nosso card de feitiço do verso e ao card de criatura de trás, então eu vou apenas estabelecer essas conexões. Também notei que nossa área de abertura não é tão grande para que possamos reajustar o colisor. Podemos torná-lo mais amplo na direção X e toller em ereções largas para que haja menos como um erro de margem fora quando estamos arrastando o cartão para esta área. E outra coisa que podemos fazer agora. Quando lançamos o jogo, tudo desaparece e podemos ver o nosso menu. Se uma loja de seios, então nada acontece. Então esses botões não estão ligados a nada agora, então vamos passar por isso e anexar nossas telas aos botões. Nosso menu está localizado sob nossa tela principal que está definida para sobreposição. Eu tenho que ir todo o caminho para muitos fundo e encontrar nossos botões, objeto
pai e para a loja. O Baden. Queremos fazer várias coisas. Vamos pressionar este botão primeiro. Queremos ativar os visuais que mostram nosso menu principal. Acho que vou usar este painel. Então eu vou arrastar nosso painel para este objeto e então selecionar jogo conjunto de objetos ativo e eu vou desativar este painel. Então, quando pressionarmos o fundo, isso tem que nos levar até a loja. Queremos ocultar o menu principal, e a segunda coisa que vou adicionar aqui é a referência à tela da nossa loja no objeto da
tela da loja . Queremos encontrar o gerente da loja de scripts, e aqui eu sei que você provavelmente não é capaz de ver este menu suspenso, mas aqui eu estou selecionando o método show Speen em nosso gerente de loja aqui. É como gerente de loja ponto show tela, e isso irá garantir que o gerente de loja é visível para os nossos jogadores. E então acho que devemos fazer a mesma coisa com o botão de trás no gerente da loja. Então, quando eu selecionar o botão Voltar quando pressionado para trás, o que você quer fazer? Eu acho que nós queremos ter uma referência para a tela da nossa loja aqui também. Eu vou para o gerente da loja e desta vez eu vou selecionar ocultar tela para que não queremos mais
mostrá-lo . E, em vez disso, queremos voltar ao nosso menu principal. Então eu vou pegar nosso objeto de painel que representa o menu principal, e eu vou para o objeto de jogo e selecione Definir ativo, e desta vez eu vou ativar. Então, eu vou melhor verdadeiro para o conjunto de métodos ativo. Finalmente, eu não sei se o nosso botão de compra está ligado a qualquer coisa, e acontece que ele não está conectado a nada. Então eu vou bater. Além disso, arraste a tela da nossa loja para o nosso botão de compra, e em nosso gerente de loja, vou tentar encontrar uma função BIPAC para que ele compre um pacote para o nosso jogador. Agora vamos testar isso e espero que não tenhamos erros. Então, se eu lancei
o jogo, a primeira coisa que queremos testar é se nossos botões funcionam, então se loja oprimida deve nos levar para a loja. Se eu apresentar de volta, ele deve me levar de volta para o menu principal, então isso funciona. Agora temos essa quantidade de ouro e podemos tentar comprar pacotes. Então, se eu comprar um pacote, acho que funciona também. Podemos querer reajustar os valores fora mínimo e máximo deslocamento porque esta volta, obviamente parecia alta em nosso painel. Mas isso pode ser facilmente corrigido se apenas ajustarmos os números. E então se arrastarmos isso de volta para a área de abertura do pacote que fica bem aqui, então em cima do colisor e não precisarmos arrastá-lo para o centro, fora da área de abertura do pacote, podemos tentar arrastá-lo para aqui do lado. Então essa volta é atraída para o centro. E então, quando passamos o mouse sobre o pacote, eu pensei que deveríamos ser capazes de ver o brilho no pacote e isso não está acontecendo. Eu deveria verificar por que isso não está acontecendo. Se pressionarmos a matilha também, não
funciona para nós por enquanto. Então ele não correu tão suave como esperado. Terei que sair e procurar por um erro que temos em algum lugar. Então eu estou de volta e eu queria fornecer uma atualização rápida sobre a situação de abertura do pacote, então eu verifiquei. E uma das coisas que não foi configurada corretamente é o colisor na área de abertura do pacote . Então a razão pela qual a abertura do pacote não funcionou antes é que o nosso colisor estava apenas sentado lá no centro. centro foi definido para 000 e pode ter causado que quando estávamos pressionando o pacote, ele estava detectando um clique não no pacote, mas na própria área de abertura. E isso não é o que queremos alcançar aqui. Portanto, uma correção fácil para isso é deslocar o colisor de área de abertura mais longe de nós para que os pacotes sempre apareçam em cima da área de abertura, e nós verificamos se o pacote está no topo da área de abertura se o nosso cursor estiver no topo da área de abertura. Quando arrastamos a matilha dizendo Ray lançar tudo para que ele vai lançar raio através da matilha
nesse caso. Mas quando estamos clicando no pacote, nós apenas usamos simples milhas para baixo, então este um pacote tem que ser o mais frontal objeto o mais próximo da câmera. Então eu o afastei mais longe da câmera. E agora, se eu lançar o jogo, eu terei outro erro e eu vou olhar para corrigir isso agora mesmo. Então eu só queria mostrar a você a loja e a quantidade de pacotes que temos. Ele também está salvo corretamente. Terei que mudar os números aqui também. Mas agora, se eu arrastar o pacote para a área de abertura do pacote, quando eu passar o mouse sobre o pacote, ele detecta o fato de que estavam pairando sobre o pacote corretamente. Quando eu pressionar na parte de trás do pacote treme e ele começa incenso, ela comer cartas. Recebo um erro aqui no meu gerenciador de um cartão e um fazer entre erro que eu vou inspecionar direito rápido e corrigi-los. E eu voltarei para você com a correção para este problema. E agora eu acabei de descobrir o problema com nossas cartas, gerando incorretamente do nosso pacote também. Então isso é causado pelo fato, e eu posso mostrar-lhe que em Mona desenvolver o roteiro. Um gerenciador de cartões escrevendo o final do script. Ele também diz imagem de pedra raridade, que é a imagem que marcará raridade em nosso cartão. Eu usei outro script que é cores raridade frias, e nós não adicioná-lo às nossas cenas. Então, quando diz raridade cores ponto instância, ele pode encontrar qualquer coisa aqui. Então, é essencialmente como dizer sem dicionário de cores de ponto. E não temos acesso a isso do “não”. Então temos que adicionar um roteiro fora de coleiras de raridade tipo A em nossa cena. É um script muito simples que tem o único propósito apenas segurando as cores para o nosso cartão brilha. Então vamos fazer isso. Irei para Projeto e localizarei nossa pasta Assets Scripts. Devemos ter os nossos colares de raridade algures nesta pasta do menu. Ou, na verdade, podemos fazer uma busca rápida. Então vamos procurar por coleiras de raridade, e eu já prefab este objeto para que eu possa simplesmente arrastá-lo para a minha cena. Mas é objeto muito simples que apenas mantém este script que você tem acesso a este, como simples para vamos dados e você pode adicioná-lo. Os colares para raridades como cartões básicos básicos, terá 100% de pedra raridade transparente. Em seguida, cartões comuns terão juramento branco, fácil costurado cartões raros, Azul épico roxo e lendário é que vamos ter esta cor laranja ouro então eu vou apenas pegar nossa raridade cor farra FAP, e vai trazê-lo para a cena. Ele não tem nenhuma representação visual, apenas um script que fica lá e devemos ser capazes de nos preparar para colar, é esse caso agora? Então eu vou lançar o jogo. Acho que vai funcionar, por isso vou maximizar a vista do jogo. Eu vou fazer compras. Temos as matilhas. Eu também reajustei as configurações em nosso gerente de loja. Eu fiz os pacotes aparecerem um pouco mais juntos, mudando a posição, alcance
X e a posição. Por que o alcance? E agora estou arrastando isso de volta para nossa área de abertura. Agora, a repressão na parte de trás vai receber estas cinco cartas. Aparecendo neste padrão engraçado terá que ajustar as posições para essas cartas. Mas agora você já pode notar que quando eles pairam sobre as cartas, eles estão mostrando brilho de couve diferente. Então todas essas cartas parecem ser raras, e nós temos uma em comum. Então vamos começar a entregá-los. Temos uma fonte, senhor. O Pew Pew soletra outro. O feitiço de visão e outro feitiço de Pew Pew. Não tenho tantos recursos de cartas no meu jogo. Então agora eu posso apenas pressionar feito. E eu também percebi que o botão feito não está conectado a nada. Então vamos fazer isso. Voltarei à minha cena. Eu acho que se esta é a nossa cannabis que usamos para o botão pronto e aqui temos que
encontrar , eu acho que é a nossa área de abertura. Então vamos tentar isso. Vou arrastar nossa área de abertura para este objeto, encontrar nossa área de abertura do pacote, e há esse método que apenas diz Concluído Então que serve o propósito fora, deixando nosso sistema saber disso. Certo, abrimos o pacote, e agora podemos abrir outro ou voltar ao menu. Então, finalmente, vamos tentar de novo. Vamos entrar na nossa loja agora temos três pacotes aqui, então parece que o sistema descobriu que já abrimos um pacote. Então vamos abrir este. Estamos recebendo as cartas de quem temos um lendário. Aqui está a pedra raridade que marca que seu lendário e o brilho é laranja. Ah, vamos virar velhos. Eles vão suas cartas, e agora o botão pronto deve funcionar. Então, agora que eu apertei, você pode ver que, hum e que o botão Deng não desaparece. Eu sinto muito. Eu posso voltar, voltar para a loja. Esse botão ainda fica aí. Então temos que estabelecer essa referência aos botões em algum lugar. Eu tentei encontrar algo que irá desativar este botão feito em um dos scripts, e eu não encontrei,
mas eu acho que nós sempre podemos fazer apenas diretamente na unidade porque nós temos este sistema bacana desligado em eventos clique para que possamos criar outro evento em nosso botão feito enfraquecer Arrastado o botão
feito em si como um objeto de jogo para este evento, podemos acessar o objeto do jogo e tudo o que temos aqui. Podemos definir este botão ativo como falso para que quando nós para que quando pressionamos o botão, ele simplesmente desaparece. E vamos tentar de novo. Espero que seja a nossa última vez. Então eu vou lançar o jogo, ir para a loja. Temos dois maços sobrando. Vou abrir isto de volta. Nós temos um lendário novamente com popa sobre, ou nós temos um épico agora e certo. Então abrimos todas as cartas. Agora que pressionamos, tudo desaparece. Então, ambos os guardas foram destruídos e o botão pronto também desapareceu. Se pressionarmos para trás, voltamos para o menu principal. Se voltarmos para a loja, podemos comprar pacotes novamente e abri-los quando eu estiver no meio da abertura. Na verdade, eu não deveria ser capaz de arrastar este outro pacote para as áreas de abertura do pacote. Então, se eu começar a virar as cartas, eu ainda não sou capaz de arrastar isso de volta. E quando o botão feito apareceu, Eu ainda não sou capaz de arrastar a próxima volta, e eu não sou capaz de voltar porque o botão Voltar não é interagir herbal agora. E quando a imprensa terminar, posso voltar e arrastar outra matilha. Então isso é exatamente o que temos pretendido para este menu no jogo e todas essas cartas. Quando os entregamos, eles também são adicionados à nossa coleção de cartas. Então, nosso sistema está ciente de que se nós obtivemos este card do pacote, isso significa que ele agora está acessível para nós adicioná-lo em nosso deck. Então, na próxima palestra, vamos dar uma olhada no roteiro Onley que ainda não vimos que é chamado de área de abertura do pacote. E então todo esse tópico de abertura de volta vai acabar e podemos abordar os outros tópicos, como construir um baralho e navegar na nossa coleção de cartas que são um pouco mais complexos. Então eu gostaria de agradecer muito por assistir a história por todos os erros que
experimentamos nesta palestra, e estou ansioso para vê-lo nos próximos palestrantes do curso.
16. 309 - Inspecionando o script PackOpeningArea: como todo mundo, como eu prometi nesta palestra vai encerrar o tópico fora de volta abertura nas partituras e vamos verificar a última faixa que não vimos até agora, que é a área de abertura traseira. Então vamos direto para ele em cima desta área de abertura do pacote de script. Incluí este atributo que diz Exigir tipo de componente off Books Collider para que
saibamos com certeza que o colider de Livros está ausente e não nos esqueçamos de adicioná-lo à área de
abertura do pacote . Temos todos os campos públicos aqui. Esta propriedade pública, com
permissão para arrastar um pacote, não
será capaz de se sentar no Inspector e usá-la para saber que não estamos
no meio da abertura do pacote. Então estamos autorizados a arrastá-lo de volta para Lee. Quando não estamos fazendo mais nada e abrimos a volta anterior, temos que jogar objetos que são o nosso carrinho breve APS que discutimos em uma das palestras anteriores. Temos referências ao nosso botão feito e botão voltar para o botão feito. Queremos configurá-lo ativo e mostrá-lo quando tivermos virado todas as cartas do pacote e para o botão Voltar. Queremos configurá-lo,
interagir, interagir, à base de plantas ou não interagir, Herbal, dependendo de onde no processo estamos agora? Então, se estamos no meio da abertura dos fundos, não
queremos ser capazes de voltar. Então nós temos essas probabilidades e eu incluí esses atributos de intervalo em cima de cada uma dessas probabilidades. E geralmente, se eu voltar à unidade e mostrar isso a vocês. Então, se eu expandir a tela da nossa loja, selecionar a área de abertura traseira, as probabilidades devem ser semelhantes a esta. Então a probabilidade lendária deve ser muito menor do que a épica, e então a probabilidade rara deve ser muito maior. Eu acho que os valores corretos são realmente muito menores do que os que eu tenho
agora . Então lendário deve ser ainda menos Pro Bowl. O épico deve ser algo assim, e então a probabilidade rara deve ser um pouco menor também. Mas você pode ajustar todos esses valores e experimentar para obter o campo certo para o seu jogo. Então vamos voltar ao desenvolvimento mono. Temos os colares aqui, mas não sei se os usamos. Acho que usamos principalmente as cores que escrevem colares de raridade que causaram um erro para nós em uma das palestras anteriores. Então vamos inspecionar como essa situação de colar funciona quando passarmos pelo código nesta classe. Então temos esta marca de verificação bóia pública e dar pelo menos um raro. Então esta seguradora que se você gerar os cartões que você quer dar ao seu jogador em um pacote e ele não recebeu pelo menos um cartão raro. Então, todas as cartas são Comuns. Ele tentará gerar um cartão extra que será pelo menos raro ou melhor. Então esse é o propósito que este booleano serve. Em seguida, temos ranhuras de matriz de transformação pública para guardas. Temos que reajustá-los para fazer a abertura do cartão parecer mais bonita na cena do crime. Estas são as referências a esses pequenos objetos de slots que as cartas são atraídas para
quando você abre a parte de trás,
a parte trás explode e as cartas voam para direções antigas, então eles estão voando em direção a esses slots. Então temos várias referências privadas. Referência privada ao colisor de caixa em nossa área de abertura traseira. Isso é muito simples. Temos os cartões do pacote criados que são armazenados como objetos de jogo. Veja por que precisamos disso em alguns segundos. Também temos um número de propriedade de guardas abertos. Obter apenas devoluções, o valor entorpecido fora guardas aberto que temos aqui. E quando definimos o valor, verificamos se o valor é igual a slots para o comprimento do ponto cartões. Então, se abrimos todas as cartas em todos os slots de, por exemplo, isso funcionará mesmo que você não queira ter cinco cartas dadas ao seu jogador de um pacote . Você pode fazer o comprimento deste slots três, por exemplo, seis ou mesmo 10 para que ele recebe um monte de guardas, e então ele vai apenas verificar quando você abriu todas as cartas. Em seguida, ele irá mostrar o botão feito que você pode pressionar para terminar este processo fora. Voltar a abrir agora em acordado, Obter o colisor Surrey dizer obter Component Box Collider. Nós sentamos permissão para arrastá-lo de volta para a verdade,
então, quando
acabamos de lançar o jogo, estamos definitivamente autorizados a arrastar pacotes se houver algum. Então sabemos que não estamos no meio da abertura do PAC, então estamos definindo essa propriedade como verdadeira. Também preenchemos nosso dicionário com cores. Cores brilhantes por raridade verão se ele é usado aqui em alguns segundos sobre a sintaxe. Para isso é Glo Cores por Mary T. Adicionar E ao contrário de adicionar algo a uma lista onde você tem apenas um argumento em seu
método de anúncio , aqui temos o chamado par de valor chave. Então passamos a chave. Essas são as nossas opções de raridade. E passamos um chamador que é uma das cores que temos aqui. Em seguida, este cursor método sobre a área, e usamos uma construção de código semelhante para descobrir se estamos arrastando o cartão para a tabela. Então, dizemos algo como cursor sobre a mesa. E aqui nós usamos, como eles disseram nas palestras anteriores, usamos taxas de lançamentos antigos, então não nos importamos se algo está bloqueando nosso elenco de raios. Enquanto passarmos por este colisor estável ou por este colisor de área que é
o nosso colisor, estamos bem, e ele detectará que nosso cursor está sobre ele. Então nós ainda todos os hits que temos um booleano passou através do colisor de mesa. Verificamos todos os acessos. Se tivermos atingido o nosso colisor CEO L que está ligado a esta área, então dizemos passado através do colisor de tabela é igual a verdadeiro e retornamos este valor. Portanto, este método é uma maneira mais fácil de verificar se estamos pairando sobre esta área com o nosso cursor e vai precisar disso para o nosso pacote arrastar. Então temos este método mostrar a abertura do pacote. Não sei se queremos inspecioná-lo agora, então é um pouco mais complexo. Vamos dar uma olhada em nossos próximos métodos. Então, o método final é chamado feito e este método será frio quando pressionamos o nosso
botão feito . Então, quando terminamos de abrir, voltar, estamos autorizados a arrastar de volta novamente e estamos configurando como verdadeiro do que o número de guardas abertos do pacote. Nós ajustamos para zero. Então nós apenas redefinir o valor e, em seguida, nós também temos que destruir todos os objetos do jogo que criamos enquanto estávamos mostrando a abertura do pacote. Então nós olhamos através de nossas cartas do pacote criativo e selecionamos os objetos zeros se
tivermos algum e estamos apenas destruindo-o, e estamos fazendo isso várias vezes até que nossos guardas de volta lista criado está completamente vazio. Então, uma vez que a abertura de trás é longo, nós destruímos todas as cartas que estávamos mostrando para o nosso jogador, e nós também sentamos de volta Button interagir, herbal to true. Então, agora que abrimos o PAC, podemos voltar ao menu e temos os próximos métodos interessantes. Então, para obter um cartão para impacto, a única coisa que vai importar para nós aqui é a raridade do cartão. É um método privado, e retorna um objeto de jogo totalmente pronto. Então ela comeu um objeto de jogo, como nós fazemos aqui. Dizemos cartão, sombra
instantânea, e ele vai se certificar de que este cartão tem a raridade que fornecemos aqui neste método. Primeiro, entramos em nossa coleção de cartas e obtemos todas as cartas que têm a raridade que temos dado aqui como um argumento para nossos métodos. Então dizemos instância de coleção de cartas. Receba cartas com muito T, e estamos passando essa raridade daqui. Então, agora que recuperamos esta lista, podemos encontrar um ativo de cartão desta lista, e podemos fazer isso dizendo cartas desta raridade. E como um índice, estamos gerando um índice aleatório de zero para este um aumento ou para esta contagem de listas. Então, estamos apenas selecionando 100% aleatoriamente. Estamos selecionando um cartão desta lista agora que temos o ativo de cartão A. Também
estamos adicionando-o à nossa coleção. Então, mesmo antes de seu jogador virar a carta, mesmo no momento em que esta carta é apenas gerada. Ele já foi adicionado à sua coleção de jogadores
para que, por exemplo, se você vai fazer este jogo e convertido em multiplayer, se o jogo
se desconectar, não será tão importante para o seu jogador porque ele tem Já tenho todas as cartas, mesmo que ele não as tenha entregado. Então temos um guarda de objetos de jogo. Aqui nós apenas declaramos este objeto do jogo, e a razão para isso é que não sabemos se este card é a criatura ou uma mágica. Então, para verificar que dizemos se um tipo de ponto de cartão e A é o nosso ativo cartão que temos da coleção. Se o card for uma criatura do que nós,
ela comeu um card de criatura do verso de criatura pré-fabricada e cards de mágica. Eles são diferentes por seus visuais nesta situação. Assim, o card de criatura tem um quadro oval em torno da imagem, e também é diferente porque ele tem os valores fora de ataque e vida enquanto cartas de mágica. Eles não têm isso, então nós. Em vez disso, ela comeu o card de criatura da Embalagem como objeto de jogo. E se for um card de feitiço, então nós informamos que ela comeu o card de feitiço da embalagem pré-fabricada. Queremos ter certeza de que nosso cartão é girado corretamente e está virado com seu cartão de volta para nós. Então dizemos rotação de transformação de cartão e aplicamos rotação de 180 graus em Por excesso? Então encontramos o gerente de cartão no nosso cartão, e você se certificou de que nossos guardas do PACs o tenham. Então, um gerente de cartão, nós pegamos o componente. Dizemos ativo cartão ponto gerente é igual a um para que o gerente sabe como re pele o cartão e quais elementos gráficos aplicar ao cartão. E então dizemos gerente ler guarda do ativo e no cartão de retorno final. Então, agora que o cartão foi devolvido para nós, este cartão já está virado para longe de nós. Ele tem sido re skin, por isso parece exatamente como nós precisávamos, e agora ele está pronto para o nosso jogador para entregá-lo. E, finalmente, vamos passar por este método Show Pack abertura em show back abertura foram primeiro fazendo as raridades de matriz opções raridade Há em você matriz, e é de lados fora de nossos slots para o comprimento das cartas. Então temos que gerar cinco raridades que correspondem aos nossos cinco slots para cartões. Temos um booleano, pelo
menos um dado raro. Queremos saber esta informação porque se não tivermos dado ao nosso jogador pelo menos um
cartão raro e temos esta opção ativada, dar pelo menos um raro. Então nós apenas substituímos um dos elementos em nossa matriz de raridades, com o valor fora das opções raridade tão raras para que ele obtenha pelo menos um cartão raro. E a maneira como geramos essas raridades é passarmos por nossa matriz de raridades de I igual a zero a nossas raridades. Esse comprimento que gera um número aleatório de 0 a 1, e então verificamos se nossa probabilidade é menor do que a probabilidade lendária. Então dizemos que a brevidade é com um índice desligado. Eu sou um lendário. Pelo menos um dado raro é verdade neste caso. Então, se não é um lendário, então não gostamos do número aleatório, ele não emprestou nesta margem como se não fosse menos do que uma probabilidade lendária do que poderia ser menor do que uma durabilidade épica. Então, se for menos de uma hora de valor de probabilidade épico, então é uma carta épica. Da mesma forma, se não for uma carta épica, pode ser uma carta rara. E se não é um cartão raro, então é com certeza um cartão comum. Mas então não dizemos que pelo menos um foi dado igual a Verdadeiro. Depois, há esta verificação que substitui um fora das raridades que temos gerado para nossas raridade opções raras. Então, neste método, até este ponto, nós nem sequer temos os cartões reais. E agora que determinamos que são raridades para as cinco cartas que
fizemos, vamos para este próximo loop de I é igual a Zero i e. É menos do que raridades comprimento, então estamos fazendo loop sobre nossa taxa de raridades geradas muli novamente, e aqui dizemos cartão de guarda objeto jogo de raridades pacote. Eu então aqui estamos realmente chamando este próximo método que já vimos e fazendo cartões
reais para cada cartão que fazemos. Estamos adicionando-o aos nossos cartões do pacote criado Array. Estamos configurando sua posição transformada em cartão, posição
inicial e carros. A posição inicial é apenas dada a nós como um argumento fora deste método. E então dizemos transformar cartão, Não se mova, e estamos movendo esta guarda em direção à sua respectiva ranhura. Assim, cada carta será movida para o seu próprio slot em 0,5 segundos, criando este efeito que as cartas voam para fora do pacote para lados diferentes e emprestam para esses pontos onde podemos transformá-los. Então é assim que funciona a abertura do pacote. Sei que às vezes está entrelaçado e tudo interligado e não é tão fácil de
entender . Mas temos um bom exemplo em nossa outra cena que já está pré-configurado e funciona. Conseguimos o mesmo resultado em nosso curso visto, por
isso, se você tiver alguma dúvida, sinta-se livre para perguntar na seção Q e A off, as pontuações na próxima seção assumirão um tópico ainda mais interessante, que está navegando na nossa coleção de cartões. Muito obrigado por assistir as pontuações e eu vou vê-lo na próxima seção.
17. 401 - Introdução à seção 4: Olá a
todos, todos, e muito obrigado por assistirem ao curso. Então, na seção anterior, tomamos cuidado fora da loja e da experiência de abertura do PAC em nosso jogo e nesta seção tomará outra parte antes do jogo, que é navegar na coleção, fazendo baralhos de cartas que os jogadores têm em sua coleção, crafting cartões e assim por diante e assim por diante. Então eu queria fazer esta palestra para mostrar como a tela da coleção se parece em termos muito gerais. Eu vou te dizer como ele é feito, e então nós podemos,
tipo, tipo, abordar e começar realmente a fazer a tela da coleção. Então vamos direto ao assunto. Eu vou lançar o jogo, a
propósito, agora, estou mostrando isso para você na cena que foi pré-feita. A cena é chamada de menu Scene, e foi incluído em nosso projeto de unidade inicial, e estamos tentando recriar as mesmas coisas em nosso menu. Vi o curso. Então agora se eu pressionar o botão de coleção, ele vai nos levar a esta parte do jogo, este menu que nos permite fazer várias coisas. Primeiro, podemos navegar em nossa coleção, filtrá-la por muitos parâmetros diferentes, como podemos conferir os cartões que pertencem às nossas classes, e temos apenas dois deles. Cartas neutras de Monge Elfo que podem ser apresentadas nos decks para ambos fora de nossos personagens. Podemos ir para esta guia antiga que irá apenas conter uma mistura de todas as cartas de todas as classes. As cartas são classificadas por seus custos de homem, então nós obtemos os cartões de um homem que abordam primeiro do que os dois cartões de custo de mana. E se percorrermos mais para nossa coleção, então teremos quatro e seis. Se você incluir mais cards, todos
eles serão classificados pelo custo de mana. Podemos aplicar um filtro personalizado. Por exemplo. Quero entrar no Lee, os três homens accost cartões. Se eles estão lá, todas as cartas que temos atualmente no jogo que exigem três conseguiu jogá-los, então existem vários elementos construtivos nesta tela. E deixe-me explicar isso para você. Primeiro temos estas abas. Isso é um buraco incomum de monge elfo, e estes são apenas fundos que sentam atrás desta janela, triagem sábia. Então eles estão atrás dessa janela quando pressionamos um deles, fica um pouco maior em escala , e é por isso que temos esse efeito. Então, na parte inferior da nossa tela, temos este homem, um filtro que nos permite selecionar guardas que custam a zero homem um homem para dinheiro e assim por diante. Então este é outro objeto interativo que temos aqui. A próxima coisa que diz mostrar X zero cartões. É um total de unidade simples, e eu apenas mudo a forma como parece. Então você pode colocar a marca de seleção aqui ou desmarcar esta marca de seleção. E se você tivesse cards que você não tem em sua coleção, então a quantidade desse jardim certo sua coleção é zero, então você só veria esses cards, ou ele esconderia esses cards de você. Você também pode pesquisar sua coleção por determinada palavra-chave para que você possa digitar algo aqui, pressione enter, e porque nossos cartões eles não têm isso como letras em seu nome ou em sua descrição não vai obter nada bonito. Procurar por vole, por exemplo, obteria este cartão vulcano. Se formos a todos, descobriremos que existe um vulcano neutro. Há um vulcano que pertence a uma de nossas classes, e há um vulcano para esta. Pertence ao Elfo, eu acho, e este pertence ao Monk. Podemos clicar com o botão direito sobre as cartas, e isso abrirá esta próxima tela que é chamada de tela de criação, onde você pode desencantar ou cartas ou criar este cartão. Então, há um monte de funcionalidades diferentes, e nós cobrimos principalmente esta área que está no lado esquerdo, fora da nossa tela. Se falamos sobre as cartas, as cartas são muito semelhantes às que usamos no jogo. Exceto por uma pequena adição. Eu adicionei este retângulo como que fica atrás do nosso cartão. E nesse retângulo eu adicionei ataques que mostram a quantidade deste cartão, os guardas no menu. São objetos muito simples. Não temos que girá-los. Não temos que fazer nada com eles, então eles só têm um componente que mudará sua aparência. Por exemplo, para cada criatura você pode carregar uma imagem personalizada. Você pode carregar o nome personalizado e as estatísticas, e tudo é tratado pelo nosso script que é ouro, um gerenciador de cartas e a mesma coisa será verdade para feitiços. E o único componente de script que nossos cartões terão é o componente que irá lidar com duas coisas. Primeiro, nosso clique com o botão direito que vai totalizar esta tela de fabricação onde podemos desencantar este card e ele vai mostrar que você tem 13 desses desencantados novamente, e sua contagem de poeira ou peças sobressalentes vai subir na parte inferior escreve Bart da sua tela . Você pode sair desta tela apenas clicando fora do cartão. E, em seguida, este componente script também irá controlar o comportamento deste cartão quando pressionamos sobre ele, quando clicamos sobre ele quando estamos no modo de construção de convés. Então, agora não estamos no modo de construção de convés foram apenas em nossa coleção. Se você olhar aqui à direita, nós temos essa lista que se chama seus decks, e nós também podemos. Como se eu pressionar esta marca cruzada vai excluir, ADAC começar cria em você pato onde podemos apenas editar um fora dos decks existentes. Então, esses itens em nossa lista de decks há apenas botões e seus botões com um
script personalizado . Então este script que Olsen sabe que ele tem que carregar a imagem do personagem. Tem que carregar o nome do deck. Então estes são essencialmente os decks que nós pré fizemos no jogo, e nossos personagens podem usá-los. Então agora podemos entrar em um dos decks que temos pré-construído, e você pode ver que a tela vai mudar quando entrarmos em um dos primeiros dec mudança é que agora só temos duas torneiras estavam fazendo o deck para a nossa classe elfo, então nós só tem a aba Elfo e a facada de classe neutra. Não podemos mais usar cartas de monge aqui, e também temos essas pequenas fitas que representam menos o nosso baralho. Eles nos mostram quais cartas estão atualmente em nosso baralho e quantas delas estão no baralho. Se eu pressionar uma dessas fitas, as fitas também têm sua própria funcionalidade. Então, se eu pressionar uma das fitas, ela removerá a carta do baralho e voltará para a nossa coleção. Então vamos tentar que eu tenho este cartão Elvin que diz, Besta Um. Lá está ele. E se uma pressão sobre a fita que representa descartar em nosso deck. Ele vai apenas remover-se e trazê-lo de volta para a nossa coleção. Se uma imprensa em sua em nossa coleção, ele irá adicionar este card novamente em ou deck, podemos mudar o nome do baralho. Este é um campo de entrada para que você possa digitar o que quiser aqui, e o nome será salvo nas preparações do jogador. Uma vez que você terminar de editar o deck, você pode pressionar feito e você voltará para a navegação da sua coleção. Então, como vimos neste modo de construção de baralho, quando a pressão de uma dessas fitas ele remove o cartão de nosso deck. E também remove este pequeno quadro que tínhamos ao redor do convés quando está cheio. Atualmente, nossos decks são Onley, tiraram 10 cartas e fizeram isso por simplicidade, porque não temos tantas cartas, então eu posso incluir outra carta. Acho que já temos isso. Então eu acabei de incluir mais uma carta, e o quadro ao redor desta janela está de volta, que significa que isso está cheio
e pronto para jogar, e também quando pressionamos essas fitas quando pressionamos nossas cartas, as cartas também tem um script que se clicarmos no cartão, ele será automaticamente adicionado ao nosso deck. Então, em nossas próximas palestras começarão a reconstruir esta tela, reinicializando este layout tipo de elemento por elemento. E os principais elementos aqui são esta janela principal que apresenta os cartões. Os cartões que são gerados automaticamente no topo, fora das pistas que são feitas para cartões. Então, o slot é Justin objeto de jogo vazio. Então aqui temos um objeto de jogo vazio aqui e esses objetos de jogo formam esta
grade de cinco por dois . Temos as torneiras que nos permitem filtrar e selecionar as cartas que pertencem a um determinado copo ou que são neutras. Você também tem isso significava um filtro. Temos a luta, que é o elemento mais simples. Provavelmente temos este campo de entrada com uma marca cruzada que pode nos ajudar a adicionar um filtro de palavra-chave à nossa coleção. E aqui à direita, temos dois objetos diferentes. Este 1º 1 é o objeto da lista de deck que nos ajuda a editar o deck. E quando pressionamos, também
temos um objeto diferente, que é uma lista de nossos decks pré-fabricados. Então nós também teremos que fazer esses dois para torná-lo antigo funcional. E, é
claro, ao longo do caminho vamos olhar para muitos dos roteiros que fazem tudo amarrado e torná-lo um trabalho como uma coleção de cartas do Rio em um jogo de cartas comerciais. Gostaria de agradecer-lhe muito por assistir e verei você na próxima palestra.
18. 402 - Layout de janela de coleção: Olá a
todos, todos, e bem-vindos de volta ao curso. Na palestra anterior, vimos como nossa coleção de cartões deve se sentir e como ela deve funcionar quando temos
tudo configurado. Mas atualmente em nossa cena que é chamado menu visto curso, temos absolutamente nada configurado para o fluxo, então vamos ter que fazer tudo do zero. E vamos começar adicionando alguns elementos gráficos à nossa cena que representam todos aqueles como painéis, botões, guias e assim por diante, apenas para nossa conveniência. Não obscureça nossa visão. Com este menu, vou desativar o objeto de tela El De ativado. Então, é a nossa tela principal que é tela de ouro sobre tudo na minha outra cena que é uma tela
excessivamente que mostra o nosso menu principal irá desativar isso do que em nossa tela de loja que
já fizemos em nossa seção anterior. Podemos desativar o conteúdo da tela. Então foram deixados, meio que com uma cena vazia que tem apenas o fundo e para a nossa tela de construção de convés. Vamos começar criando outra tela, então eu vou, e neste menu eu vou até você. Eu provavelmente você não pode ver este menu de contexto, mas estou criando uma tela e estou configurando-a para o espaço do mundo. Agora que eu disse isso para o espaço mundial, Eu tenho que redefinir sua posição 200 a largura ea altura que reajustar mais tarde. Eu realmente acho que a maioria dos jogos há algo como 1920 por 1000 e 80. Então vamos usar essas dimensões, e então vamos reajustar a escala para tornar algumas apropriadas em nossa tela. Agora que esta tela é o espaço do mundo, provavelmente
vamos renomeá-la para tela de fundo. Lembro-me que estava frio assim nas minhas outras cenas. Então vamos manter os nomes consistentes e, em seguida, apenas para ter algo visual em nossa cena , vamos clicar com o botão direito em nossa tela. Eu vou até você eu e criar um painel como uma criança fora deste objeto de tela. Agora, se eu for para a cena, nossa tela é realmente muito maior que o nosso fundo. Se eu clicar duas vezes no campus, é enorme e temos que reajustar sua escala na direção X e y e podemos tentar alguns valores . Eu acho que algo como zero ponto vamos com 0.2 por agora, e agora se eu disse para zero Z ou dois, se eu clicar duas vezes, nós quase obter o tamanho correto. O tamanho é muito próximo do tamanho fora do nosso fundo, o que é bom. A próxima coisa que podemos fazer é começar a reajustar o seu com, então não precisamos realmente que ele seja tão largo. Queríamos deixar esta parte fora da nossa tela para mostrar nossa lista de deck ou a coleção de nossos decks pré-fabricados para que eu pudesse torná-la ainda mais estreita. E então este painel, ele representará o fundo da nossa cena para que eu possa ir e selecionar outro sprite para ele . Acho que estava usando esse sprite para tudo. Está definido para ser semi transparente para que eu possa retornar. É L de 2 a 55 aqui e eu posso escrever Quick, vá até você. Eu crio outro painel. Em cima disso. Essa será a nossa moldura para que eu possa encontrar uma das nossas molduras. Acho que estava usando o mesmo quadro para tudo, mas podemos tentar ser criativos e usar outra coisa. Então, se eu selecionar este quadro, eu não quero que ele seja semi transparente. Então eu também vou e aumentar a transparência todo o caminho 2 para 55 e agora este painel servirá como um fundo, então seu nome que e a próxima batalha que teremos servirá como um quadro. Então, vamos também renomear este objeto agora. Não queremos que este objeto de plano de fundo ocupe toda a tela. Então queríamos ser um pouco menores para deixar espaço para nossas guias no topo. E queríamos deixar algum espaço para a nossa área inferior onde temos todos os filtros aqui
na parte inferior das nossas telas. Então, se eu voltar ao jogo, eu acho que isso parece aceitável e eu só quero ter certeza que nós temos essa área. Esta parte do quadro também se encaixa em nossa tela, então eu vou tornar a tela um pouco menor. Vamos tentar de novo. Você pode realmente definir a exibição do jogo e a exibição da cena para ser lado a lado, e será mais fácil fazer todos esses ajustes. E agora vamos apenas marcar duas áreas e dizer antes tela marcará a área que está ocupada por nossas torneiras. Então eu vou e como uma criança fora de nossa tela, porque nós temos que lembrar que nossa tela ainda é maior do que este painel quando criança fora nossa tela. Eu vou à direita, rápido ir para você I ou na verdade eu posso apenas criar um objeto de jogo vazio e este
objeto de jogo vazio . Eu queria ficar na parte superior da nossa tela. Eu queria esticar até as fronteiras da nossa tela. E agora eu também tenho que aplicar uma porcentagem de ancoragem a este objeto. Então ele está ancorado no centro da nossa tela, e eu queria estar ancorado nesta área onde este objeto está atualmente. Então vamos fazer isso. Vou renomear este objeto para Tabs pai e as guias. Eles são feitos de uma maneira muito simples. Nós apenas adicionamos um novo componente a este objeto, que é chamado de Grupo de Layout Horizontal. Assim, imunidade pode usar os grupos em camadas lá como grupo de layout horizontal, grupo layout
vertical ou grupo de layout de grade. Neste caso, precisamos do grupo horizontal em camadas. Podemos procurar por este componente e adicionar isso ao nosso pai guias. Nós queremos controlar o tamanho da criança por com e altura e vamos criar um botão apenas por
exemplo,
eu vou para exemplo, você I e Creative Button como uma criança fora do nosso pai guias. Se eu criar uma cópia deste botão, pressionarei o controle D do que esses dois botões. Eles vão ocupar todo o nosso pai torneiras, e isso está acontecendo porque este grupo de layout horizontal ele cuida de colocar e espaçamento fora desses botões. Então agora eu posso dar esses objetos impactando à esquerda na parte superior e inferior direita. Posso dar-lhes algum espaçamento para fazê-los se destacarem um pouco longe um do outro. Penso que este fracasso das apostas é demasiado e podemos dar-lhe algumas apostas à direita também. E então temos um pequeno problema em nosso pré feito visto. Estas abas lá apareceu tipo de atrás da nossa janela principal, e aqui eles aparecem na frente de para permanecer janela e todos os problemas de classificação quando estamos trabalhando sob uma tela lá, resolvidos pela ordem fora as coisas em mais alto para que eu possa apenas agarra as facadas com elas no topo nosso objeto de fundo, e desta forma as nossas abas, elas serão escondidas atrás do nosso objeto de terra de pão em nossa cena e em nossa visão de jogo. A vista do jogo também me mostra que posso fazer alguns ajustes. Por exemplo, vamos realmente colocar a vista do jogo e a vista da cena lado a lado. Então, uma das coisas que posso fazer é reajustar meu passado para
torná-lo um pouco mais baixo. E agora que eu sei que esta borda superior fora do nosso pai abas, não
se encaixa em nossas telas. Então vamos fazer com que nossas guias se encaixem na tela recitando a tela. Então eu vou pegar nosso pai taps e eu vou torná-lo mais curto assim. Eu não tenho que esquecer que eu tenho que reajustar a ancoragem, e agora eu posso pegar meu plano de fundo e torná-lo para que a parte inferior das guias seja mascarada pelo nosso fundo. Então não é tão difícil assim. Você tem a idéia por agora, eu posso comer esses botões onde eles podem deixá-los lá dentro. Acho que quanto mais tarde, quando conectarmos todos os scripts, eles serão excluídos automaticamente. Quando lançamos o jogo e substituir por nossas guias reais. Então, haverá um script que irá lidar com as guias para nós. E outra coisa que podemos criar sob nossa tela de fundo é o objeto. Uh, isso vai cobrir toda a área inferior da nossa cannabis, e vai conter vários filtros. Então eu vou clicar com o botão direito do mouse criar outro objeto de jogo vazio e aqui na banheira cena. Vamos nos livrar da aba do jogo ou emparelhar com nossa banheira vista como parecia antes. Eu posso colocar este objeto de jogo aqui na parte inferior da nossa tela e fazê-lo tocar. Desta vez, não
queremos que fique atrás ou na frente do nosso passado. Queríamos tocar ou fundo, e eu quero reaplicar as âncoras para que elas estejam nos cantos deste objeto de jogo vazio . E pelo fato de eu não ter feito a âncora estourar aqui. Eu sei que provavelmente minha porcentagem de ancoragem no fundo também tem que ser reajustada, então o fundo será ancorado aqui e em cima do fundo. Ele também deve ser ancorado onde ele está atualmente e este objeto de jogo. Ele será ancorado para que ele não fique em segundo plano. Vamos este objeto jogo, menor batalha ou algo semelhante, e mais tarde vai segurar nossos homens um fielder. Vai guardar os nossos cartões que o seu jogador não tem. Tuggle que é um pouco semelhante a um modo de fabricação em pedra dura. Então, se você quiser mostrar as cartas que o seu jogador não tem, e você quer deixá-lo criar essas cartas do que você disse que alternar e também terá um campo de entrada como um filtro de palavra-chave aqui. Então estas são todas as coisas que irão adicionar a este painel inferior na nossa próxima palestra. Gostaria de agradecer por assistirem a este curso, e verei vocês em nossa próxima palestra.
19. 403 - Filtro de manga: Olá, todos e bem-vindos de volta ao curso Nesta palestra irá discutir todos os controles que estão localizados na parte inferior da nossa tela de navegação coleção, que é o filtro MENA. O campo de entrada D nos permite inserir palavras-chave diferentes e filtrar nossa coleção por essas palavras-chave. E também temos um botão que nos permite mostrar os cartões que não temos ou ocultá-los. Então esses três elementos, eu acho que eu vou trapacear e eu não vou recriá-los todos do zero vai apenas ir e examinar
minuciosamente como eles são feitos em nossa cena de menu. E então nós vamos apenas criar um prefab fora deles, e nós apenas vamos trazê-los para esta cena. Então agora eu vou entrar em nossa cena de menu, e nesta cena eu vou expandir nossa tela de construção de deck, habilitar o conteúdo da tela para que possamos ver tudo aqui. Vamos expandir o objeto de tela de fundo. Tem várias áreas, então, como se vê, organizei um pouco diferente. Ele tem a área de coleção que tem tanto a coleção e as guias, e tem a área inferior. Isso realmente não importa, e nesta palestra estavam preocupados Onley com esta área inferior, este homem um objeto de filtro. Se você está familiarizado com o curso anterior que eu fiz, ele é realmente feito de nossa reserva de mana. Então nós usamos um objeto muito semelhante como um homem Apu no jogo. Também apresentava os cristais de mana. Mas eles não tinham esses números aqui 12 e todo o caminho até sete mais. Então eu tive que adicionar esses. E também tinha lutas maníacas da
Tana. E agora tem apenas oito de 0 a 7 mais. Então essa foi uma mudança fácil. Apenas removendo vários cristais. A maneira como os homens um filtro funciona primeiro, ele tem o script de filtro de maná que vai descobrir se clicamos em um desses
cristais de mana . Tem uma matriz de velhos cristais de mana. Tem duas cores. 1º 1 é a cor realçada que é apenas branco. Então isso não muda o gráfico do nosso homem um cristal de forma alguma. E o 2º 1 é uma cor negativa. Se selecionarmos um dos cristais de maná, ele será destacado. E todos os outros estão ativos sob nossos homens. Se Ilter objeto. Temos um objeto. Eles repreendem BG e moldam, por isso é muito comum. Nós temos fundos e quadros em todos os lugares, e eles são apenas imagens que são feitas para que um deles sirva como um fundo para este elemento. E então temos uma moldura em torno dela. Nada de especial. Então temos esse objeto de cristais. É apenas um naufrágio vazio. Transforme como se criássemos objetos de jogo vazios. Em nossa palestra anterior, você pode apenas clicar com o botão direito e, neste menu de contexto, ir para criar vazio. E nós conectamos um grupo de layout horizontal a esse objeto, assim como fizemos para guias em nossa palestra anterior. Se expandirmos este jogo, objeto que é chamado de cristais vai encontrar todas essas pequenas gemas de 0 a 7 mais e cada uma
dessas gemas. Ele também tem um objeto filho, que é um texto mash pro text. Eu gosto de usar texto muito pro texto motivo. Um. Tornou-se livre recentemente, e a razão número dois
, fornece contornos mais suaves. Então, se você não tem malha de texto, mano, agora
você pode baixá-lo na Unity Assets Store gratuitamente. E eu acho que é um ótimo recurso para renderizar texto em seu jogo, e não estamos alterando esse texto em código. Então estes são apenas como valores de imposto pré-feitos 01 e assim por diante e assim por diante. Cada gem tem seu próprio elemento de texto, e eu acho, Não
vamos saltar para o nosso campo de entrada de palavra-chave e total ainda. Vamos conferir ao nosso homem um roteiro futuro e descobrir como isso funciona. Então, se eu dobrar um script de filtro rápido para nossos homens, ele abrirá para nós em Mona Development. E agora que este script está aberto, é super curto. Tem vários campos públicos. 1º 1 é a matriz de imagens. Há cristais de ouro, e já vimos que nossas duas cores sua predefinição para branco e cinza. Temos o nosso índice de corrente de inteiro privado que é definido como menos um e por menos um. Aqui queremos dizer que não estamos filtrando nada, e não estamos selecionando nenhum cristais fora da hora. Só queremos mostrar a todos os cartões e a este homem uma classe de filtro. Tem três métodos. Um deles é chamado instantaneamente no início, que é chamado de remover. Todos os filtros removem todos os filtros. Ele avalia todas as imagens em nossa matriz de cristais, e define a cor ociosa para uma cor negativa para que nenhuma das imagens seja selecionada. Nenhuma das imagens é destacada, e queremos mostrar cartas fora dos valores do velho homem A para seus jogadores. Depois de chamar esse método, remova os filtros antigos. Nós também sentamos índice atual para menos um, e cada vez que fazemos uma mudança para o nosso estado deste homem um filtro, queremos relatar esta mudança para a nossa tela de construção de convés. Instância. Custo de mana do script navegador coleção ponto neste caso, Então este script navegador coleção definitivamente vai dar uma olhada nele. Em nossas próximas palestras, ele reúne todas as informações de todos os filtros. Então, a partir do Ilter Manaf, ele pode descobrir os custos de mana das cartas que queremos mostrar. Ele também receberá informações de nossas guias que nos ajudam a descobrir se você quer mostrar cartas de uma determinada classe ou apenas cartas neutras ou todas as cartas. Ele também levará informações de nosso filtro de palavras-chave e assim por diante e assim por diante. Então vamos apenas relatar todos os dados que temos em nossos filtros para este script. Então aqui dizemos construção de deck, instância de ponto de
tela, coleção, custo de mana
do script do navegador e dissemos isso para o índice atual, mesmo que seja igual a menos uma hora. script do navegador de coleção estará ciente de como lidar com essa situação. Só nos mostrará cartas com todos os homens accosts. Então, quando pressionamos um dos nossos cristais primeiro, chamamos o mesmo método. Remova filtros antigos que apenas remove destaques de todos os cristais de outra maneira. Em seguida, verificamos se o índice não é igual ao índice atual. Então, se temos seios em um homem diferente um cristal, então nós apenas atualizamos o valor fora do índice atual. Destacamos o respectivo Mana Krystle dissemos que sua cor para destacá-lo. Senão, dissemos que o índice atual para menos um. Então, se um dos cristais de maná foi selecionado, por exemplo, nós estávamos mostrando as cartas que custam três maneiras reprimidas no cristal de maná com o custo de três novamente. Então ele deve destacá-lo, e ele deve nos mostrar todas as cartas novamente. Então é isso que está acontecendo aqui. Estávamos definindo nosso índice atual para menos um, e então fazemos a mesma coisa que no início. Nós apenas dizemos coleção de construção de convés, linhas de script e nós relatamos esta informação de custo de mana para esse script e este método vazio
público Imprensa em cristal. Tenho certeza que funciona como um manipulador inferior, então vamos tentar encontrar componentes de botão em nossos cristais de mana. Se eu expandir e selecionar nossa jóia, cada uma dessas gemas ele realmente atua como um botão. Então este botão, ele tem um manipulador. Refere-se ao nosso homem If Ilter objeto e chama este método de pressão em cristal e envia o índice fora de zero neste caso. Então este é o nosso primeiro cristal que tem o valor de zero. Então todos eles passado os valores que estão escritos sobre eles, por exemplo, é gem. Com o número cinco. Passará o valor de cinco para o nosso método pressionado em cristal. Então é assim que nosso Manaf Ilter funcionará no jogo, e relatará todas as informações em nosso script de navegação de coleção na próxima palestra. Acho que vamos dar uma olhada nesses dois elementos que temos a seguir. Primeiro é esta alternância simples que é apenas um total de unidade re pele. E então vamos dar uma olhada nessa palavra-chave personalizada preenchida com um botão X para cancelar todas
as alterações. Então eu gostaria de agradecer-lhe por assistir as partituras e eu vou vê-lo na próxima palestra.
20. 404 - Crie alavancagem e filtro de palavras-chave: Olá a
todos, todos, e bem-vindos de volta ao curso. Então, nesta palestra estamos continuando descobrindo como os elementos na parte inferior da tela do
nosso edifício DEG funcionam e cobrimos nosso ilter Manaf que nos permite mostrar blares as cartas com um certo homem accosts. Agora temos este pequeno total que diz Mostrar X zero cartões e também este campo de
entrada barra de pesquisa palavra-chave que nos permite filtrar nossa coleção por determinada palavra-chave. Acho que vamos da esquerda para a direita e começar a partir do botão. Então a alternância, é na verdade um total de unidade ligeiramente modificado. Acabei de adicionar um pouco de fundo para a área de texto. Decorei-os com molduras, o que é muito parecido com tudo o que estávamos fazendo. Nosso plano de fundo agora tem um gráfico de quadro aqui, e também tem um objeto de marca de seleção. Aqui no centro e no lado, temos uma imagem também com o quadro e essa coisa que se chama rótulo. Ele foi retirado do padrão da unidade atrás, e no nosso caso, ele diz mostrar X cartas zero, que
significa que a regra mostra cartões que não estão presentes em nossa coleção. Então, se formos para o botão. A alternância tem um script que é muito simples. Deixe-me abrir. Mostre que para você Em Wana desenvolver o script tem apenas vários métodos. Temos referência privada ao nosso total que estavam acordando. Temos um método sat valor se quisermos dizer explicitamente isso. Ok, nós queremos ativar ou desativar o total, e nós também temos essa mudança de valor método. Então, verifica-se que, para alternâncias na unidade, você pode criar um método que é chamado quando o valor fora do total é alterado e, de forma semelhante aos nossos homens, um filtro. Nós também relatamos os dados que são configurados durante a luta para nossa tela de construção de deck. Script Roeser de Coleção de Instâncias. E há uma propriedade pública que é frio mostrando cartões que o jogador não possui. E estamos definindo isso para o total, então o chá é o nosso ponto total está ligado. Então todos esses scripts, eles apenas servem um propósito fora, alimentando essas informações em nossa coleção, navegação ou script. E agora vamos voltar à unidade e verificar como nosso campo de entrada de palavras-chave é feito. Então, também é baseado no campo de entrada padrão da unidade. Eu adicionei um quadro para apenas para torná-lo parecido com todos os outros elementos que temos no jogo. E esta marca de cruz que fica aqui no lado é na verdade um botão. Então, quando pressionamos nesta marca cruzada, executamos um método no script em nosso campo de entrada de palavra-chave. Então vamos verificar o roteiro. Chama-se assim. Campo de entrada de palavra-chave. Também estou usando este campo de entrada. Digite enviar, que não é o meu script. Então este script, certifique-se de que, se estamos sobre este campo de entrada e reprimir, digite Rouco um método em nossa classe de campo de entrada de palavra-chave. Isso é ouro. Digite enviar e o script de campo de entrada também não é muito longo. Então temos uma referência privada à nossa rivalidade de entrada que estamos acordando, estrutura
muito semelhante à que tínhamos com o nosso total. Temos também vários métodos. Um deles é chamado de clear, que define o texto em nossa rivalidade de entrada para uma string vazia, e nós também fazemos a mesma coisa. Nós relatamos essa informação que é destaque em nosso campo de entrada para nossa coleção sobrancelhas de script. Desta vez estamos nos referindo a sua propriedade pública que é palavra chave dourada, e estamos definindo esta propriedade para ser igual a qualquer texto que temos em nosso campo de entrada. E se pressionarmos Enter ao editar este campo de entrada, faremos a mesma coisa. Então, nós apenas passamos o texto do campo de entrada como uma palavra-chave para o nosso
script de navegador de coleção . E o script do navegador da coleção irá descobrir tudo o que ele precisa para mostrar a
coleção correta fora das cartas para nossos jogadores. E agora que discutimos tudo isso, nós realmente sabemos como elementos antigos nesta área inferior funcionam. Eu acho que não recriá-los manualmente a partir do zero, porque definitivamente vai demorar muito tempo. Vamos tentar transferir este objeto de área mais lenta desta cena para a outra cena, a cena que estamos fazendo neste curso. Então eu vou para ativos pré fabs menu pré fabs. Eu não acho que isso já está em destaque em nosso menu pré fabs. Então, se eu arrastar nossa área inferior para a pasta do prefeito, ele cria um novo prefab para nós, e há uma coisa que eu queria mostrar a vocês. Um script que eu encontrei na Internet, que eu amo e sistema de unidade de pré fabs às vezes é muito complicado porque você adicionou um prefab em um lugar e ele faz alterações em seus objetos em outros lugares. Se você pressionou, aplique ou reverta acidentalmente. Então, se você não quiser que o objeto seja vinculado ao seu prefab e você deseja usar o prefab apenas para salvar algo ou transferir algo de uma cena para a outra , adicionei o script ao seu projeto que adiciona este novo item do menu de contexto que diz Break prefab instância. Definitivamente ele liga o objeto do prefeito. Então agora nosso objeto aparece como azul na hierarquia. Então, todos os nomes desses objetos na hierarquia são realçados em azul, o que significa que eles são uma parte de um prefab. E se eu ir e pressionar freio prefab instância definitiva. A área inferior que tínhamos em nosso visto permanece a mesma. Ele agora é salvo aqui como um prefab, mas nós não temos mais um link entre esses dois objetos. Então, se eu fizer alterações neste prefab aqui, eles não serão refletidos em nossa área inferior, e isso significa que nós não vamos uma bagunça são vistos em qualquer maneira, então eu acho que é muito útil. Você confinou este roteiro. Eu acho que se você procurar por breves intervalos, exemplo, o script é ouro itens de menu de quebra prefab. E a menos que você faça isso, quebre o link para o seu pré Febreze e não nos deixe ir para o nosso “S ”. Vamos ao nosso curso de muitos vistos. Vou salvar esta cena. Nós não fizemos nenhuma mudança significativa aqui, e eu vou para o nosso breve menu de pasta EPS pré fabs. Vou localizar a nossa área inferior e queremos encontrar o objecto parental para a nossa área inferior. Como em vez deste painel inferior, acho que podemos liderar isso. E em vez do painel inferior, vamos adicionar nossa área inferior à tela de fundo para que ela seja virada para dentro. Existem várias inconsistências semelhantes. Por exemplo, este total não está ancorado corretamente. Eu não tenho certeza se ele está irritado corretamente essa cena também, mas nós podemos reajustar manualmente isso, então descobrir a ancoragem apenas arrastando as âncoras, aplicando-as aos cantos deste objeto. Então acontece que ele estava apenas ancorado na área central e, em seguida, se voltarmos para a nossa guia de
jogo, uma das coisas que você pode notar é que esta área não é visível em sua profundidade de jogo em tudo, então é apenas cortado pelo limite da nossa tela. Então agora, na verdade, antes de fazer qualquer alteração, eu quero ter certeza de que uma ocorrência de break brief up que é apenas um objeto que
copiamos de outra cena. E também eu posso selecionar a tela de fundo e eu posso torná-lo mais curto para que nossos homens um filtro, nossa alternância e nossa barra de palavras-chave todos eles aparecem e se tornar visível em nossa guia jogo. Então, o que retornou o toque do jogo para sua posição original. Há a nossa configuração com todos esses novos elementos e agora também podemos ir para a cena e reajustar nosso painel um pouco. Então vamos para o fundo e eu vou fazer este painel tocar nossa área inferior e incorrido adequadamente. Assim, em nossas próximas palestras irá gradualmente mover-se através dos outros elementos que precisamos trazer em nossa cena para tornar esta coleção tela de navegação funcional, que adicionar concordou fora objetos de jogo vazios para esta janela para dar aos nossos cartões alguns marcadores. Onde queremos que ela os comeu? Vamos adicionar dois botões aqui nos sites, mesmo que eles estivessem escondidos em nossa cena anterior. E nós tínhamos aquelas setas deslizantes funky que estavam nos deixando trocar Bages nesta
tela de coleção ,
na verdade, na verdade, no fundo havia apenas botões que se estendem ao longo do todo, como altura, juramento, esta janela. Então, vamos adicioná-los e trabalharemos para tornar isso totalmente funcional em nossa nova cena enquanto também olhamos para todos os scripts. Gostaria de agradecer por assistirem ao curso, e nos veremos nas próximas palestras.
21. 405 - Tablets de personagens para filtragem de coleções: Olá, todo mundo. E muito obrigado por assistir a este curso. Então, nesta palestra, eu queria abordar o tópico que nós meio que ignoramos. Nós tocamos apenas brevemente, o tópico fora ter essas guias no topo da nossa janela de coleção. E acontece que não é tão automatizado quanto um pensamento e terá que criar todas essas guias manualmente. E, na verdade, haverá dois layouts diferentes desses passos Agora, você vê que meu objeto de guias é apenas um objeto vazio com uma seleção de caracteres de script, guias que você olha nesta palestra ou na próxima palestra. E eu tenho dois conjuntos diferentes fora de guias. Um deles é chamado de botões de guia para navegação de coleção. Tem grupo de layout horizontal, assim como tentamos organizar nossas banheiras na cena. E ele acabou de dizer as diferentes guias que você pode ter em seu jogo. Você sabe, com
antecedência que você terá certas classes como monge elfo e assim por diante e assim por diante. Você terá suas cartas neutras, e eu também incluí uma opção de mostrar todas as cartas de uma vez. Então, quaisquer aulas que você terá em seu jogo. Você os conhece em eventos e pode criar manualmente todos esses toques. E depois há também os segundos objetos. Então, se eu desativar este e acionar o 2º 1, este será ativado em Lee quando construirmos um convés. Então, se mudarmos nossa coleção para o modo de construção de baralho, só
podemos acessar as cartas que pertencem à nossa classe, para
as quais estamos construindo o baralho e também as cartas neutras, as cartas que podem ser incluídas em qualquer baralho. Então vamos o nosso objetivo para esta palestra. Vamos entrar em nossa cena porque este é o meu pré visto que estamos olhando
agora e vamos recriar a mesma situação em nosso curso visto. Então vou deixar tudo como era antes. Eu vou para os nossos ativos de projeto mudar para
o nosso menu, visto curso, aquele em que estamos trabalhando, e vamos tentar alcançar o mesmo resultado aqui. Então, vou expandir o nosso edifício do deck, conteúdo
da tela de tela e, como uma criança, fora da tela de fundo. Temos o nosso pai de abas. Agora, ele já está segurando esses dois botões, mas como você se lembra, temos que incluir vários objetos de jogo vazios ou Justin objeto de jogo vazio em cima deste pai
facadas. Então vamos chamar essas facadas,
por exemplo, por exemplo, as
abas para durante a construção do convés. Então, digamos construção de convés de abas. Então eu vou criar um objeto de jogo vazio como uma criança fora de nossa tela de fundo. Basta clicar, criar vazio, e eu vou colocá-lo exatamente no mesmo local onde nossas guias cartão a arte. Então eu vou apenas combinar a posição fora das abas e a ancoragem também. Então eu não quero ficar ancorado no centro. Eu queria sentar onde nossas guias estão, e isso vai se tornar um futuro pai para nossas torneiras. Então vamos chamar isso de banheiras, e eu vou pegar nossas guias naquele prédio e trazê-lo para o objeto de facadas. E eu também tenho que mudar a ordem do objeto facadas para fazê-lo aparecer atrás do fundo para que não tenhamos nossas guias no topo da janela. E então vamos trabalhar um pouco em um fora de nossas guias. Temos que fazer isso apenas uma vez. Eu posso fazer isso. Uma das guias que não precisamos. Vamos trabalhar neste botão. Então, para este botão, queremos mudar a imagem na parte inferior em vez de você. I Sprite, vamos usar a imagem comum que usamos para todos os U I no jogo. Acho que é este. E, em seguida, também queremos aplicar um quadro a este botão tão bem, clique com o botão
direito, vá até você. Eu seleciono uma imagem que faz com que esta imagem se ajuste a este botão pressionando a mudança de controle antiga, selecionando esta predefinição de alongamento. E então eu irei e selecionarei um dos quadros que temos para este botão. Acho que algo assim serve. E então para texto, queremos mudar o fundo para o nosso telefone padrão Devyn barra para que usamos em todos os lugares
neste projeto podemos aumentar o tamanho do telefone manualmente ou podemos apenas habilitar o melhor ajuste. E na verdade, provavelmente
queremos fazer mais uma coisa com o fundo. Vamos rebater o fundo para que ele não fique muito na parte inferior da nossa conta. Não era estritamente necessário, mas acho que ficará melhor assim. Então aqui temos um como pré feita guia Atualmente, diz Botão, vamos mudar o imposto para, digamos classe ou neutro foi sua classe para esta facada. E vamos criar uma cópia dele pressionando control de com seu selecionado na hierarquia. E vamos chamar isso de neutro. Agora que construímos as banheiras para construção de convés, vamos criar uma cópia deste jogo. Object Solo seios, controle de aqui E em vez de dicas para construção de convés, vamos renomear este para coleção de guias, navegação e para navegação de coleção. Queremos ter as abas que descrevem cada uma das nossas classes de personagens neutras e o velho personagem facada Então torneiras para construção de convés. Vamos desativar esse objeto. Vou selecionar nossa guia neutra e criar várias cópias dela. E então eu vou renomear todas essas facadas de acordo, apenas mudando seus textos. Tudo bem, parece
que nossos botões de guia estão prontos, mas temos dois scripts que são responsáveis por controlar nossas guias. Um deles é anexado a cada guia para que possamos simplesmente recolher todos esses objetos extras que temos como Crianças fora de nossas guias, selecionar todas as guias que criamos, e eu posso ir para adicionar componente. Eu acho que tinha guia no nome, Então eu vou procurar por Tab e é toque de filtro de caracteres frio. Então, vamos adicionar este script a cada um fora de nossas guias. Portanto, este script é relativamente simples de configurar, pelo
menos no editor. Então, vamos começar a partir de nossas guias para a navegação de coleções. Por exemplo. Este canhoto representa as cartas que pertenciam à classe Elf, então eu posso ir para este campo que diz Ativo, e devemos encontrar o ativo de personagem que pertence à nossa classe de saúde. Podemos mudar esta janela de cena para ativos, encontrar o recurso Elfo e selecionar isso. Portanto, queremos que este passo selecione Elf Guards Force,
em seguida, o segundo tabu. Estamos fazendo a mesma coisa para um monge, então vamos para os ativos e selecioná-los por muito tempo aqui e para a aba neutra. O próximo passo. Não temos que fazer nada tão neutro. Eles são aqueles em que o ativo de personagem não está definido para nada, então ele está definido para saber. Então é por isso que não temos que mudar nada. Já está configurado corretamente, e para esta última aba podemos ativar este pequeno show Tuggle. Caracteres antigos Então eu ativei esta marca Mark e temos todos esses passos definidos para as outras guias que temos guias para construção de convés. Nós não temos que mudar nada lá porque eles serão configurados em código. Nossa aba neutra não mudará tanto,
aquela que é para Deck Building e nossa guia de personagens. Este ativo será aplicado automaticamente. Dependerá do tipo de personagem que estamos construindo o Deck 4. E há outro script que controla nosso comportamento de guias mais como um gerenciador de guias que lida com todas as guias de uma só vez para que possamos ir para o nosso objeto tabs. Vou adicionar componente. E há um script que ele é caracteres frios separadores de seleção. Então vamos adicionar que ele tem uma matriz fora de guias onde temos que caracterizar todas as guias que
temos em ou projeto. Então eu vou apenas gostar do inspetor neste objeto tabs com o script que acabamos adicionar, e eu vou selecionar todos os botões mantendo o controle tão bem, selecionar os botões para construção de deck e para navegação de coleções, e eu vou arrastar todos eles para esta matriz, que irá preencher esta matriz e em todas as abas que temos para a matriz. E nós temos mais algumas referências a certas guias, e nós precisamos delas apenas para padrão nossa seleção para essas etapas. Por exemplo, quando estamos construindo um baralho, queremos por padrão nossa seleção para a facada de classe para que quando o jogador selecionar que ele quer construir um baralho para uma determinada classe, ele primeiro verá todas as cartas de classe . Então vamos fazer isso. Acho que esta é a nossa guia de vidro para construção de convés. Então vamos arrastá-lo para aqui. E outra guia que precisamos de uma referência para é guia neutro ouro quando a coleção de navegação lá quando estamos coleção navegando o primeiro quero ver as cartas neutras que podem ser destaque em qualquer classe é apenas a nossa preferência para mostrar esta estrela jogadores também gosto deste botão para que é suposto ser a aba neutra. Isso mesmo, e eu vou arrastá-lo para esta aba neutra quando a coleta estiver navegando. Eu acho que o trabalho que fizemos é suficiente para esta palestra na próxima palestra vai
dar uma olhada em todos esses scripts primeiro, o script de guia de seleção de caracteres que gerencia todas as abas e, em seguida, no script que é apresentado em cada guia em nossa cena que é chamada de guia filtro de caracteres. Gostaria de agradecer muito por assistirem ao curso, e verei vocês na próxima palestra.
22. 406 - Scripts de tabuleiros de personagens: Olá a
todos, todos, e bem-vindos de volta ao curso na palestra anterior. Nós configuramos as guias de seleção de caracteres em nossos projetos, e sabemos que elas são controladas por esses dois scripts. O 1º 1 é o separador Filtro de Personagem Ouro, e é apresentado em todas as abas que fizemos na palestra anterior. Então, vamos dar uma olhada no que ele faz e como ele funciona temos o público sente que você já viu o que diz Ativo, Ativo Personagem e o comum aqui diz, Se não, esta é a guia que selecionar usual cartões que é verdade. E também temos a segunda marca de verificação que aparece no Inspetor. É ouro mostrar personagens antigos. É muito específico, e estamos fazendo isso apenas para aquela aba que nos mostra todas as cartas, tanto neutras quanto as cartas que pertencem a todos os personagens. Para essa aba, temos que defini-la igual à verdade. Temos uma seleção de caracteres privados, guias guia script. Eu não acho que é usado aqui, então vamos ver se eu entro nisso. Ele não vai fazer nada apenas para não mudar o código, eu não vou fazer nada para ele aqui, mas parece que ele não é usado neste script, então você pode simplesmente movê-lo se você quiser, em
seguida, flutuadores privados, seleção, tempo de
transição. E este é o tempo que vai usar para mudar as balanças das nossas torneiras. Quando pressionamos um deles, será uma espécie de zoom em um pouco explodido, e isso vai acontecer em 0,5 segundos. Então temos Private Sector três escala inicial que é definido como Vector 31 se você vai ter uma escala
diferente para se você tiver uma escala diferente para suas abas, você pode alterá-lo para algum outro valor e vai usá-lo para de selecionar nossa banheira e devolvê-lo para seu estado normal. E também temos este multiplicador de escala flutuante particular. Então, quando selecionamos uma das torneiras vai torná-lo 1,2 vezes maior do que todas as outras abas. Temos esse método público. Evite manipulador de botão Tab. Ele se referirá à nossa instância de tela de construção de deck , script
tab, que é aquele outro script que ainda não vimos. Vamos dar uma olhada nele nesta palestra e vai chamar um método Select tab como argumentos para este método vai passar este e o segundo argumento completa que se refere a instantâneo. Então, se queremos selecionar a parada instantaneamente ou mostrar esse pequeno tipo de animação fora de uma guia que está sendo selecionado, precisamos desta maneira instantânea fora mostrando as guias assim como eles são, também, disse seu estado inicial quando Basta entrar na tela. Então, quando você entra na tela, você provavelmente não quer mostrar nenhuma animação. Você quer que os jogadores entrem na tela e vejam guias em um determinado estado, como o estado inicial. Então é por isso que precisamos desses quatro. E se estamos pressionando o botão guia e o manipulador de botão guia está frio, certamente
queremos mostrar esta animação. E, em seguida, temos estes dois métodos select e de select que são frios de que outro script de guias de seleção de
caracteres. Então eles são chamados externamente, e aqui estamos nós, verificando se instantâneo, então estamos apenas definindo nossa escala local transformada para ser igual a algo. Neste caso, estamos selecionando. Então, estamos multiplicando nossa escala inicial pelo multiplicador de escala e se quisermos mostrar um pouco de animação, então estamos usando entre. Então nós incluímos o uso de geminação de pontos dg aqui no topo da nossa classe, e isso nos permite dizer transformado em escala de fazer. E como o primeiro argumento para este método, temos que passar o flutuador. Então isso faz escala. Muda a escala da nossa união de objectos, anteriormente em direcções antigas. Então nós apenas pegamos os atos iniciais de pontos de escala. Temos que pegar apenas um dos valores multiplicados pelo multiplicador de escala, e estamos mostrando essa animação durante o tempo de transição de seleção. Então, no nosso caso, é 0,5 segundos e uma coisa muito semelhante que estamos fazendo se estamos de seleção. Então, se for instantâneo, estamos apenas definindo nossa escala local para escala inicial. E se não for instantâneo do que estamos usando entre novamente e estamos twittando escala em direção à escala inicial durante nosso tempo de transição de seleção. Agora que cobrimos este script, vamos dar uma olhada no script tab e o que este método selecionar Abdo. Então eu vou para guias de seleção de caracteres. Temos todas essas rixas públicas que você já viu. O 1º 1 é a lista de abas que cobre todos os toques. Então temos um personagem público, guia do
futuro, facada de
classe. Então temos essas duas guias especiais. Uma delas é a facada de classe que usamos durante a construção do convés. A outra é a guia neutra que usamos quando estamos navegando coleção. E estas são as guias padrão que mostramos ao nosso jogador quando ele entra nesta tela. E também temos este campo privado muito importante que é chamado para o índice atual. Então nós realmente rastreamos qual dessas guias entre todas as guias que temos no projeto está selecionada. O método Select AB é frio quando pressionamos em uma das guias e passamos a
própria guia . Então, isso é raspado guia de filtro de caracteres e estamos dizendo Bruin instantâneo. Pode ser uma seleção instantânea ou pode não ser uma seleção instantânea. Então, primeiro estamos tentando descobrir o índice da nova guia que selecionamos Surrey dizer guias, que é a nossa lista, e dizemos ponto índice off tab. Então, o toque que acabamos de clicar em nós estamos tentando encontrar o índice dessa facada em nossa lista de
guias. Se o nosso novo índice for igual ao nosso índice atual. Então nós temos a aba neutra selecionada e nós apenas clicar nessa guia novamente. Então não temos que fazer nada. E acabamos de voltar do método. E a única maneira de completarmos essa declaração e continuarmos em nosso método é se nosso índice atual e esse novo índice forem diferentes. Então, definimos nosso índice atual para ser igual a este novo índice. Como os comentários vêem, temos que selecionar em você guia. Para fazer isso, primeiro
temos que remover os destaques de outras guias antigas. Então nós iterado através de todas as guias em nossa lista de guias, e estamos verificando se ele não é igual à nossa banheira selecionada. Então estamos fazendo isso para todas as guias, exceto para a que selecionamos. Dizemos d adulto de selecionar e passamos esse valor fora instantâneo. Esse é um argumento fora deste método. Então também temos que selecionar a guia que queríamos selecionar. Então nós dizemos tab dot select e instantâneo, e isso é apenas os truques visuais ou apenas mudando a escala e indicando que a guia é selecionada para os nossos jogadores. Você pode incluir algum tipo de sistema de partículas que aparece acima da aba quando você pressiona
em seus métodos selecionados, assim você pode simplesmente estender a funcionalidade deste pacote ao seu gosto pessoal. E depois, como tudo o resto. Então lembre-se, como para os nossos homens, um filtro como para o nosso filtro de palavras-chave e o pequeno Tuggle que temos na área inferior fora de nossa tela estavam relatando nossa seleção para nossa coleção. Mano é o roteiro deles. Então, vemos Doug inicializando script de navegador coleção de instância de tela. Ele tem uma propriedade pública que ele é um ativo frio que representa um ativo de caráter, e nós estamos passando tabulação ponto ass para este campo de ativos e também apenas um caso especial. Ele tem outro campo público que diz, incluir todos os caracteres e neste incluem caracteres antigos, propriedade estavam passando esse valor fora mostrar todos os caracteres barras em nossa guia, e temos outro método aqui que diz classe SAT em Passo da classe. É preciso ativo de caráter, e é feito porque não sabemos com antecedência. Você pode ter várias classes de personagem em seu projeto, e quando você entra na construção de deck, você quer ter certeza de que essa facada de classe mostra as cartas corretas. Então, a fim de fazer isso, vamos chamar essa classe de conjunto de método na facada de classe, diríamos Classe esfaqueada, ativo
antigo, ativo inclinação
igual. Então, o argumento deste método e nós também vamos mudar o nome em nossa parada de classe. Então dizemos classe, ponto
facada obter componente em Crianças porque a facada classe é um botão e o componente de imposto fica no objeto filho fora do nosso fundo grave encontrar o texto na guia. Dizemos texto ponto e estamos definindo-o igual ao nome adulto do ativo. Então agora não vai dizer apenas classe. Ele vai dizer, monge ou elfo ou o nome de qualquer uma das classes que você criar e uma última coisa para
torná-lo totalmente funcional. Podemos ir e selecionar as guias em nosso projeto. E como um manipulador de botões em todas essas etapas, podemos adicionar um manipulador a este próprio evento rápido. E eu acho que eu tenho que fazer isso pessoalmente para cada conta. Você pode simplesmente pegar a guia de filtro de caractere componente, arrastá-la para cada um fora de suas guias. Aqui podemos ir para guia filtro de caracteres, e temos que encontrar esse método Tab. O Botton. Manipulador, Eu sei que você provavelmente não é capaz de ver isso, então você tem que selecionar o método Tab Botton manipulador para ser chamado de seu personagem Food ou tab script em cada guia. Então eu vou apenas fazer esta ação para todos os toques guia filtro Caractere aqui. Encontre guia de filtro de caractere componente e chame a guia. Manipulador inferior Quando pressionamos neste fundo e agora que isso é feito, podemos dizer que nesta palestra cobrimos tudo o que você tinha que saber sobre. Essas guias na próxima palestra enfraquecem o toque em diferentes tópicos da tela da nossa coleção. E eles são a ganância por cartas no topo desta janela da coleção. Nós não fizemos um par de botões aqui nos lados da tela da nossa coleção que irá mudar as páginas da nossa coleção. E também não cobrimos as listas que temos aqui. Um deles é o decks menos pronto. E outra é a lista de cartas que temos em nosso baralho. Então ainda temos um monte de coisas para cobrir. Muito obrigado por assistir o curso e eu vou vê-lo na próxima palestra.
23. 407 - Script CollectionBrowser Parte 1: Olá e bem-vindo de volta ao curso Em nossas palestras anteriores, fizemos a maioria dos elementos de filtragem que nos ajudarão a selecionar determinados subconjuntos fora cartões em nossa coleção. Fizemos o pool de mana, o estoque ir, o filtro de palavra-chave e as abas no topo da janela da nossa coleção. Agora vamos falar sobre o conteúdo desta janela. Como as cartas chegarão lá e o que está localizado no centro desta janela? Então eu estou atualmente na cena que eu tenho pré feito. Então esta não é a cena em que estamos trabalhando. E eu só queria te mostrar qual é o conteúdo desta janela? Então retorna que no topo desta janela eu tenho este objeto que ele é chamado de
cartões de Ganância Quatro , e ele tem o navegador de coleção de componentes que nós já falamos sobre. E nesta palestra ou em uma de nossas próximas palestras vai dar uma olhada no roteiro e
verificar o que ele faz. Mas então, se ampliarmos, não
podemos ver nada sob esta grade para cartões. Ele tem alguns objetos, então essas linhas para cartões eles são apenas clones fora um do outro através deste ar
objetos 100% semelhantes e todos esses objetos estão apenas vazios. Eles são chamados de slot de cartão e eles marcam as posições. Onde queremos instância ela comeu nosso cartão pré fabs quando queremos mostrar cartas aos nossos jogadores na coleção. Então eu acabei de colocar o manualmente. Então este primeiro guarda está localizado em X menos oito para a segunda carta, menos quatro. O cartão do meio está localizado em 000 e o próximo cartão é ele para o próximo cartão. São oito na exposição e estes números? Eles parecem funcionar bem para a nossa tarefa. E depois copiei esta linha dos cartões. Então o 1º 1 ele se senta, por que é igual a três. Então está um pouco acima do ponto médio da janela da nossa coleção, e o 2º 1 provavelmente está em menos três. Isso é certo. E então, em nossos cartões de Grau 4, há esse objeto que ele é chamado de slots, e ele tem referências a todos os slots de cartão. Você pode arrastá-los um por um manualmente para que ele vai assim a partir do 1º 1 e ele
passa pela primeira linha fora de cartões e, em seguida, ele vai para a segunda linha fora cartões, então este objeto não é tão complicado,
e nós não temos que re criar manualmente em nossas outras cenas. Então o que estou oferecendo é que podemos transferi-lo para a outra cena. E acontece que existe uma maneira muito mais fácil. Não temos que criar pré fabs ou fazer algo assim. Podemos clicar com o botão direito do mouse em nossa grade fora de cartões, peitos de
objeto ,
copiar aqui, e então podemos ir para o outro. Vi aquele em que estamos trabalhando. Chama-se o menu “Curso de Visto”. Vamos para a nossa tela de construção de deck e encontrar o conteúdo da tela. E, como um filho de conteúdo de tela, enfraquecer apenas com base neste objeto grande para cartões. Eu acho que eu tenho basted como uma criança fora do deck edifício tela em vez de então eu quero
mudar isso e torná-lo uma criança fora do conteúdo da tela. E depois de termos feito isso, temos várias referências ausentes porque essas referências foram ligadas aos objetos que são deixados nas outras cenas,
então teremos que reestabelecê-los. O primeiro par de referências são guias de um personagem e todos os toques de personagem que são referências a objetos de jogo. Então vamos encontrá-los. Eu vou para abas, e eu acho que, por abas de um personagem nós queremos dizer as guias que o ar usado para construção de convés. Então eu vou arrastar aqueles para aqui e Debs para coleção Navegação são guias de caracteres antigos frios. Então, na coleção de navegação Weekend selecione todos os personagens. Nós também queremos ter uma referência ao nosso campo de entrada de palavra-chave, e isso está em nossa área inferior. O script deve estar no próprio objeto de campo de entrada da palavra chave, então eu vou arrastá-lo para este campo. Então temos uma referência aos nossos cartões que não temos Togo e este script deve ser anexado ao nosso switch. Então eu vou arrastar isso para este campo, e o último é o filtro MENA. Então eu vou arrastar o filtro MENA e re estabelecer esta referência. E agora vamos abrir nossa coleção, crescer um roteiro e Monta desenvolver e verificar o que ele faz. Então eu vou clicar duas vezes aqui, e agora que este script está aberto, podemos ver todos os campos públicos, maioria deles que já verificamos. Agora, quando nós configurá-los para isso, você viu as novas florestas são esses objetos de jogo menu de feitiço,
prefab e menu de criatura de objeto de jogo prefab. E vamos dar uma olhada nos cartões pré fabs em nossa próxima palestra, então não os vimos ainda. Todas essas referências ao campo de entrada de palavra-chave e filtro MENA acabamos de configurá-los
nesta palestra. Temos uma referência privada ao ativo do personagem e esse sentido para o personagem que estamos construindo um Deck 4. Nós também temos uma lista privada fora objetos de jogo criados cartões. Então, porque as cartas serão instância, ela ated e arruinar Sten. Ela comeu esses cards de menu de mágica ou cards de menu de criatura. Temos que manter o controle desses objetos que fizemos. Então, se você, por exemplo, quiser mudar para a próxima página em sua coleção de cartas, você quer destruir todas as cartas anteriores que você estava mostrando através do jogador e você quer fazer as novas. Então, para esse propósito, nós mantemos o controle deles e os adicionamos a esta lista de cartões criados. E então já conversamos sobre a maioria dessas coisas. Temos todas essas propriedades, então propriedades com este modelo desenvolvido tema eles aparecem na cor vermelha, ea maioria das propriedades já deve ser familiar para você. Por exemplo, esta mostrando cartas que o jogador não possui. Tomamos o valor desta propriedade do nosso total. Então, se você pressionar sobre esse total como mostrar X cartões zero ou mostrar cartões que seu jogador não possui, ele define o valor desta propriedade. Em seguida, temos o índice de página, e o índice de página é algo que introduzimos apenas nesta palestra, e a maior parte do código que funciona com ele estará neste script. Então temos outra propriedade incluindo todas as raridades. Esta propriedade não é usada para a navegação da nossa coleção. Então, apenas no caso, se você quiser fazer outro filtro que incluem Onley, cartões
lendários ou Onley cartas raras, você pode fazer isso e conectá-lo a este. Incluir já chás propriedade, e ele vai mostrar Onley aqueles cartões que têm uma certa raridade que você deseja mostrar aos seus jogadores. Então temos este próximo passo incluem personagens antigos e que é usado em Lee para os nossos
personagens antigos . Esfaquear. Então lembre-se que há uma aba de personagem especial que diz tudo, e ele apenas passa aquele booleano. Então, se nós selecionamos essa aba, ele vai deixar nosso navegador de coleção saber que queremos incluir os cartões de personagens antigos em nossa coleção e a mesma coisa com Verity. Acho que não estamos filtrando os carros para o ar, Ian. Mas se você quiser adicionar esse filtro, você pode conectar isso a esta opção de raridade, e você pode mostrar os guardas fora certo muito T ou você tem uma opção off, incluindo já t definir isso verdadeiro ou falso da mesma forma que trabalhamos com personagens. Em seguida, temos o campo para nossos ativos de personagem. Caráter privado, ativo sublinhado ativo. Então, quando alternamos entre suas guias que simbolizam ou cartões neutros ou os cartões
que pertencem a um determinado caractere do script tab, definimos esse ativo de propriedade e, em seguida, mostramos os cartões que pertencem a esse determinado caractere . Temos a mesma propriedade para nossas palavras-chave que dirigimos a partir do campo de entrada de palavra-chave. Temos a propriedade para o custo de mana que recebemos de nossos homens, um teatro e todas essas propriedades. Eles são muito parecidos pela sua estrutura. Então primeiro definimos o valor em algumas das propriedades. Também redefinimos nossa coleção para a página zero. Assim é a primeira página que podemos mostrar aos nossos jogadores
e, em seguida, também chamamos a página de atualização de método. Às vezes, não redefinimos o índice da página para zero, mas sempre chamamos essa página de atualização de método que mostra os cartões que correspondem a todos esses filtros que temos Este próximo barras incluem cartões de token e um exemplo de um cartão token . Pode ser uma moeda que você dá aos seus jogadores no início do jogo. Você não quer que eles adicionem este card à sua coleção. Como enquanto navega na coleção. Eles não devem ser capazes de colocar a moeda em seu baralho. É por isso que você chama este cartão de token, e você pode fazê-lo para que os tokens simplesmente não estão aparecendo em nossa coleção. E é assim que se faz. Portanto, o valor padrão off include token cards é sempre definido como false. Se você quiser mostrar os jogadores de direção de token por algum motivo, você pode configurá-lo como verdade
24. 408 - Script CollectionBrowser parte 2: E então nos mudamos para a parte mais interessante deste roteiro. Temos essas duas situações em que queremos deixar nosso jogador navegar em sua coleção. Um é apenas para a navegação de coleções, então eles não estão construindo um deck. Eles estão apenas vendo, selecionando cartas, fabricando-as. Oh, eles estão apenas vendo, avaliando, selecionando carros, fabricando-os e assim por diante e assim por diante. E a segunda maneira é quando eles realmente querem construir um deck. Então, para esses dois casos, temos os seguintes métodos. O 1º 1 diz mostrar coleção para navegação, e o próximo diz mostrar coleção para construção de convés. Eles são muito parecidos. A primeira parte fora de ambos os métodos serve para redefinir nosso campo de entrada de palavras-chave, redefinir nosso script total e redefinir nossos homens um filtro para que todos eles estejam definidos para seus valores
padrão. O campo de entrada de palavra-chave é apenas claro, o total que disse dois tolos. Então não estamos mostrando aos jogadores guardas que eles não possuem, e os homens um futuro não está filtrando nada, então é mostrar cartas de todos os custos de mana. O que é diferente é se estamos mostrando coleção para construção de convés. Tínhamos um campo privado que é um personagem dourado. E, em seguida, estamos definindo o valor off caractere para este argumento desta construção método para este caractere. Então, vamos deixar essa coleção de irmãos de roteiro saber disso. Ok, queremos mostrar as cartas só para este personagem ou para as cartas neutras. Então, em ambos os métodos, temos um resfriado para este método universal. Mostrar cartões que faz todo o trabalho em nosso script navegador de coleção vai dar uma olhada nele em alguns segundos, então este carvão vai realmente exibir alguns cartões para nossos personagens para que eles possam vê-los . O pré fabs será incenso, ela ated, e essa grade em nossa cena será preenchida com guardas e essas duas próximas linhas lá incluídas para selecionar uma guia padrão em nossa coleção. Por exemplo, se estamos navegando coleção, queremos padrão para a guia neutra. E é por isso que tivemos essa referência à guia neutra quando coleta, navegação. E se estamos construindo um deck, queremos padrão para a facada da classe. Então, queremos mostrar primeiro as cartas que pertencem a uma determinada classe. Se rolarmos para baixo, temos este método limpar cartões criados. Cartões criados é a lista que usamos para manter o controle de todos os cartões pré fabs que nós instância ela comeu. Então, ele invadir esta lista de cartões criados em um loop while e verificamos enquanto ele tem elementos nele. Então, enquanto contagem é maior que zero, e se esta lista tem elementos, nós sempre falamos o primeiro elemento, aquele com o índice fora de zero e nós removemos da lista do que destruímos o
objeto do jogo . Então, depois de chamar este cartão limpo criado, seu navegador de coleção não mostrará absolutamente nenhum cartão, e a grade estará 100% vazia. O método atualiza quantidades na página. Ele serve um propósito um pouco mais avançado. Então, digamos que você está lendo cartas da sua coleção para a sua lista de baralho no deck que você está construindo. E há várias maneiras que você pode usar para gerenciar números ou quantidades fora das cartas que seu jogador tem. Você ainda pode manter o mesmo número na coleção. Por exemplo, se o seu jogador tiver duas instâncias de uma determinada carta, se você adicionar a carta ao baralho, este número na coleção, como quantas cartas ele tem? Ele pode não ser afetado, por isso ele sempre irá exibir o valor total fora de guardas que o seu jogador tem, ou você pode fazê-lo para que, se a carta é movida da coleção para o baralho, ele pode ser subtraído do valor total que você jogador tem. Portanto, é um pouco de um recurso mais avançado e não vai se aprofundar muito nisso. Mas esse método serve esse propósito. Quando você adiciona a carta da coleção em seu baralho, você pode atualizar a quantidade deste card na coleção e torná-lo para que você exiba quantidade
diferente. Temos a página de atualização do método que chamamos em cada uma das propriedades, e é muito simples. Se olharmos para o método de atualização da página, ele apenas chama o método mostrar cartões, aquele que faz todo o trabalho. Mas ele passa os valores de todas as propriedades que temos em nosso
script de navegador de coleção . Então estes são apenas todos os valores subjacentes fora de cada uma das nossas propriedades, mostrando cartões que o jogador não possui, etc,
etc, incluindo cartões de token. Nós apenas passar todos esses valores para este método, e então este método privado que faz todo o trabalho que leva nos argumentos que são suficientes para definir os valores de todas as propriedades que temos, e isso é exatamente o que estamos fazendo Aqui. Não estamos configurando-os através das propriedades porque isso causará atualizações desnecessárias. Estamos apenas definindo os valores subjacentes como mostrar guardas que o jogador não possui com um sublinhado e todos os outros valores com um sublinhado. Estamos definindo-os iguais aos argumentos que passamos para este método. E então, uma vez que conhecemos todos esses parâmetros diferentes, temos que descobrir que tipo de ativos de cartão devem ser mostrados nesta página. Então, no nosso caso, fiz esta coleção funcionar com imaginação. Então, temos uma determinada página fora guardas exibidos na nossa frente, e podemos mudar para a próxima página ou para a página anterior. Então, queremos obter a seleção de página, que é outro método importante que nos retorna a lista de ativos fora de guarda. E uma vez que conhecemos a lista de desprevenidos, é baseado nisso. Podemos criar todos esses pré fabs fora de nossos cartões de menu e risco neles fazê-los olhar como aqueles ativos de cartão que selecionamos em nossa seleção de página vai olhar para a seleção de página em alguns segundos. Primeiro, temos que limpar a lista fora dos cartões criados, então temos que remover todos os cartões que temos exibido anteriormente e substituí-los por novos cartões. Nós também podemos fazer uma verificação rápida, como se guardas nesta página. Se a nossa seleção de página é igual a zero, então acabamos de retornar do método e não temos que fazer nada. Então, nós nos certificamos de que a página é clara e, em seguida, não precisamos. Em vez disso, ela comeu todas as cartas novas para que possamos apenas retornar do método. Se este não for o caso, então nós passamos por esta declaração, então nós entramos isso para loop, e nós estamos sua classificação sobre nossos cartões nesta matriz de página de zero para sua contagem, nós estamos criando um novo objeto de jogo, dependendo da qualidade do nosso cartão. Então, se temos uma criatura do que nós instância, ela comeu o menu de criatura pré-fabricada, e nós imediatamente disse sua posição dois slots com um índice fora I posição. É por isso que usamos não um quatro cada loop, mas este quatro loop para que tenhamos um índice e sempre podemos colocar o cartão no slot
apropriado. Uma vez que o cartão é instância, ela ated nós definimos o pai para este cartão. Então nós pais todos os cartões, também. Esta transformação, que é que objetos na cena que é chamado de grade off guardas. Não temos que esquecer de adicionar este novo incenso. Ela comeu o cartão de identidade na nossa lista de guardas criada. E então temos esses dois passos importantes. Um deles. Nós temos o gerenciador de um cartão no nosso cartão de menu e torná-lo de modo que este cartão é re skin e parece que os nossos carros nesta página I cartão ativo e no próximo passo fazemos a mesma coisa com o nosso cartão de anúncio para deck script que ainda não vimos. Adicionar cartão para Deck Script é o script principal que será anexado a todos os cartões de menu, e nós temos que definir o ativo cartão para deixar a faixa saber que tipo de um ativo de cartão será adicionado ao baralho. Se clicarmos neste card e também chamarmos a quantidade de atualização do Método para mostrar a quantidade
apropriada deste card que nosso jogador tem em sua coleção. Se rolarmos para baixo, temos esses dois métodos e esses dois métodos. Eles são manipuladores abotoados, então teremos dois botões nos lados da nossa coleção esquerda e direita ao lado no anterior. E quando pressionamos esses botões, temos que selecionar uma nova página, e temos que mostrar os cartões que estão localizados nesta página. Então, se peitarmos a seguir chamamos a seleção de Página de Método. Passamos todos os diferentes parâmetros que já estão configurados para nossa coleção. Exceto para o índice de página, adicionamos um ao índice de página. Então, queremos descobrir o que está na nossa próxima página, e também verificar se não há nada lá. Não queremos deixar nossos jogadores fazerem isso e mudar para aquela página vazia. Então, estamos verificando se as cartas de contagem nessa página são iguais a zero. Acabamos de retornar deste método,
por isso, se você chegar à última página, você verá alguns cartões e você deseja pressionar para a próxima página. Ele não permitirá que você faça isso, então não queremos que os jogadores escapem da última página que tem pelo menos algumas cartas. E então, se tivermos pelo menos alguns cartões para mostrar, chamamos o método mostrar cartões com o índice de página mais um como um dos argumentos. E se estamos pressionando outro botão, aquele que nos permitirá mostrar a página anterior, só
temos que verificar se nosso índice de página atual é igual a zero. Portanto, não queremos permitir que nossos jogadores entrem em índices de página negativos. Então o índice de página não pode ser menos um ou menos dois ou algo assim. Se este não for o caso, então vamos apenas mostrar as cartas,
quaisquer que sejam as cartas que estão lá para os nossos jogadores e, finalmente, nosso método que é Cold Bay seleção envelhecida, o último método que temos que entender a partir este script. É preciso um set off argumentos muito semelhantes porque estamos acessando a partir de nossos cartões de show, por isso leva todos os valores que são representados em nossas propriedades e esses mesmos valores. Eles também são representados em nossa coleção de cartões como filtros para nossos carros, e isso se traduz perfeitamente neste carvão. Então estamos obtendo os cartões de nossa coleção que satisfazem todos os critérios selecionados que
chamamos de coleção de cartões. Instance Get cards, que é o nosso método mais geral na coleção de cartas para obter alguns cartões. E passamos todos esses argumentos para este método. E nesta linha temos todas as cartas que satisfazem os critérios para que não tenhamos as cartas que se encaixam nesta página ainda. Assim, por exemplo, você só pode colocar 10 cartas em uma página, e este guarda para escolher pode retornar 100 cartas se todas satisfizerem as condições que você passar para este método. Então, para obter a seleção de página, temos que entrar nesta próxima declaração se cartas para escolher. Então, se temos, por exemplo, 100 guardas e queremos mostrar ao Onley 10 deles e todos esses valores seguintes, eles foram selecionados apenas com alguma tentativa e erro. Então a maneira apropriada de fazer isso é verificar se temos cartões suficientes para mostrar nesta página com este índice de página. Então, se tivermos guardas suficientes
para sentir este bebê, por exemplo, pode ser 1/3 página, então este cheque nos informará se temos algo para mostrar na terceira página, então vamos selecionar nossos cartões desta maneira entrar neste loop de quatro, e temos várias condições neste loop de quatro. Portanto, não é apenas uma condição da qual começarei. Eu era um índice de zero. E as condições que vai verificar será se eu é menor do que cartões para sapatos de contagem menos índice página multiplicado pelo comprimento ranhuras. E a segunda condição será que eu é menor do que ranhuras comprimento. Portanto, não queremos devolver mais cartões que podemos mostrar em uma página. E, ao mesmo tempo, não
queremos devolver mais cartas do que temos em nossos cartões para escolher de uma lista e, em seguida, vemos a lista de devolução. Adicionar. Estamos adicionando o cartão com este índice página índice multiplicado pelo comprimento ranhuras mais I. Então, qualquer forma, estes são alguns valores que foram selecionados por tentativa e erro. Eu incluí algumas explicações deles aqui nos comentários, e agora chegamos ao final da nossa coleção, navegação ou script e, você sabe, em geral como isso funciona na próxima palestra vai resolver mais coisas visuais que precisamos para mostrar nossa coleção de cartas aos nossos jogadores, como aqueles cards pré fabs, o prefab fora de um card de mágica e fora de um card de criatura que vai usar nos menus. E ainda não fizemos esses botões os botões esquerdo e direito que nos permitirão alternar entre as páginas da nossa coleção. Gostaria de agradecer por assistirem a este curso, e verei vocês na próxima palestra.
25. 409 - Botões de Paginação e Prefabs de cartões de coleção: Olá a
todos, todos, bem-vindos de volta ao curso nesta palestra vai fazer duas coisas. Primeiro, queremos estabelecer os botões esquerdo e direito que nos permitirá trocar de páginas em nossa coleção. E a segunda coisa vai dar uma olhada nesses guardas, o menu de card de mágica e o menu de
Card de Criatura . Você pode encontrá-los nos ativos Breve ABS Menu pré pasta Fabs. Acabei de arrastá-los de lá para a nossa cena, mas primeiro, vamos fazer os botões esquerdo e direito. A fim de fazer isso, eu acho que podemos apenas pegar um fora de nossos botões de guia porque essencialmente, eles não são diferentes. Então eu posso apenas eu acho que eu posso copiar e eu posso colá-lo em cima do nosso fundo. Então, até que para o fundo, eu vou clicar com o botão direito e bater com base por algum motivo, ele não quer reprimi-lo como uma criança fora de nosso plano de fundo. Então eu tive que reestabelecer manualmente isso, e então eu deveria esticar este botão, torná-lo caber para este lado fora do nosso fundo. Vou aplicar a porcentagem de ancoragem a este botão. Eu não acho que seja muito bonito, mas você sabe que precisamos de uma solução prática e, mais tarde, podemos fazer alguns ajustes nela. Então este botão vai ficar aqui ao lado. Podemos desligar a moldura. Acho que não precisamos dele. E podemos tornar a imagem no botão um pouco mais escura para nos informar que podemos mudar páginas onde podemos apenas torná-la transparente. Foi o que fiz na outra cena, então acabei de tornar esta imagem transparente. Ele ainda vai reagir a cliques, mas não será visível para nossos jogadores e o texto. Podemos apenas sable que eu acho que é OK para o nosso botão, exceto que nós temos o script guia filtro de caracteres aqui que nós não precisamos. Então eu deveria remover isso. E devemos estabelecer a conexão com o nosso script de navegação coleção que está anexado a este componente grade quatro cartões. Então eu vou arrastar isso para este evento clique, e aqui eu vou selecionar navegador coleção anterior qual sentido para mudar para a
página anterior . Então eu posso apenas controlar D e copiar este botão. Eu posso arrastá-lo para aqui para o outro lado fora do nosso fundo, e eu posso ancorá-lo em um local apropriado onde ele está atualmente, e então para este botão, nós devemos apenas re selecionar um método diferente para ser chamado do navegador de coleção Aqui. Gostaríamos de chamar o método a seguir, e eu tenho Olson nomeou essas guias apropriadamente. O 1º 1 é chamado de botão anterior, e o 2º 1 é chamado de Next Button. Agora vamos dar uma olhada rápida nos cartões até certo ponto aqueles cartões lá ainda mais simples
do que aqueles com que estávamos lidando antes na abertura PAC. Nós só nos importamos com um lado dessas cartas, então nós nunca vamos mostrar o cartão de volta. Nós nunca vamos girá-los para que não precisamos que melhor componente de rotação de cartão,
e, portanto, eles são muito simples. Eles só têm o colisor de livros. Eles têm o componente gerenciador de um cartão que nos permite re pele o cartão e mostrar imagens de
texto diferentes . É século no cartão, e o único novo componente que esses cartões têm é este cartão de anúncio para script deck. E outra diferença entre estas cartas da nossa coleção e as cartas que
recebemos dos PACs é este pequeno compartimento na área inferior desta carta que mostra a quantidade desta carta que o nosso jogador tem na coleção. É bem simples. É muito semelhante aos nossos botões. Não é clicável, no entanto, por isso não tem o script de botão. E nós temos uma referência a essa quantidade de texto tributada em nosso cartão de anúncio para deck script. Então vamos abrir de cartas a convés e dar uma olhada em Mona Development. Agora que o cartão de anúncio está aberto, temos apenas um campo público, a quantidade de texto. Então temos várias rixas privadas flutuam escala inicial, fator de
escala. E precisamos deles porque queremos fazê-lo de modo que quando o jogador entra com o cursor e paira sobre o cartão, ele é ampliado em 1.1. Neste caso, temos cartão de ativo cartão de campo privado ativo ativo ativo ativo em acordado. Nós apenas memorizamos nossa escala inicial, e dissemos que é igual a transformar a escala local X porque vamos usar fazer entre para alterar a escala. Não precisamos salvar todos os três valores de escala. Vamos escalar. É uniformemente. É por isso que estamos guardando apenas uma coordenada neste caso, a coordenada X. Temos o método público sentou-se guarda ativo. Isso é muito simples. Apenas um método de uma linha que define o valor fora de nossa variável SS guarda privada se rolar um pouco mais baixo, Existem vários métodos que lidam com este comportamento de zoom. Então, na maioria das entradas e na maioria das saídas, fazemos algo com nossa escala. Nós dizemos transformar fazer escala. E mudamos a escala neste caso de volta à escala inicial em 0,5 segundos. E neste caso, estamos ampliando nosso cartão, tornando-o maior por esse fator de escala. Também em 0,5 segundos. Quando a imprensa sobre este cartão, este método em cort