Obrigado por visitar a The Game Makers Brasil 😁 Use o fórum de Dúvidas para fazer perguntas. Se está em busca de aprender dê uma olhada nos tutoriais.

Criação de menu utilizando ds_map

Perguntas? A comunidade te ajuda a resolver.
Avatar do usuário
DarlesLSF
Membro
Membro
Reações: 0
Mensagens: 107
Localização: Humaitá - RS

Criação de menu utilizando ds_map

Mensagem por DarlesLSF » Dom Dez 02, 2018 11:05 pm

Boa noite, estou desenvolvendo um menu de itens pra serem utilizados durante a batalha e pra fazer isso estou tentando utilizar ds_map pra criar ele. Só que estou com algumas dúvidas sobre esse tipo de sistema do GM, já que não entendo direito como funciona as funções dele.
No caso, eu tenho 7 itens que podem ser usados durante a batalha:
- poção
- poção média
- poção grande
- ether
- ether medio
- resil
- elixir
Eu criei variaveis globais para cada item e add eles no ds_map:

Código: Selecionar todos

itensbatalha = ds_map_create();
ds_map_add(itensbatalha,"pocoes",global.pocoes);
ds_map_add(itensbatalha,"pocoesmedias",global.pocoesmedias);
ds_map_add(itensbatalha,"pocoesgrandes",global.pocoesgrandes);
ds_map_add(itensbatalha,"ether",global.ether);
ds_map_add(itensbatalha,"ethermedio",global.ethermedio);
ds_map_add(itensbatalha,"resil",global.resil);
ds_map_add(itensbatalha,"elixir",global.elixir);
Para que eu mostre esses itens, eu utilizo esse código:

Código: Selecionar todos

if (ds_map_exists(itensbatalha,"pocoes"))
    {
        instance_create(150, 22, pocao);
    }
Dai fica assim:
Imagem
Eu realmente necessito criar um código assim pra cada item ou há uma maneira de mostrar todos os itens existentes nesse ds_map de uma vez?
E outra dúvida: caso eu não possua nenhuma poção no inventário, como faço para os restantes dos itens subirem na lista? No caso, poção media ocuparia o lugar da poção e assim por diante.

Avatar do usuário
None
Colaborador
Colaborador
Reações: 2
Mensagens: 286

Re: Criação de menu utilizando ds_map

Mensagem por None » Seg Dez 03, 2018 12:26 am

Eu te aconselho a não usar o ds_map, use o ds_grid.
Ele é basicamente uma tabela, você possuía linhas e colunas, assim você pode separar os itens em colunas/linhas e suas informações em sua respectiva linha/coluna.

Daí você cria OUTRA ds_grid para o seu inventário e assim por diante, para cada "separação" de função você cria uma ds_list.
Lembrando que se você não for mais usar a ds_grid você deve destruir ela.
Tutorial de jogo de plataforma completo: https://youtu.be/MMUy_bMKqPk
Como criar um jogo de RPG Japonês no estilo Final Fantasy https://goo.gl/efr6fx

Avatar do usuário
All-x
Administrador
Administrador
Reações: 8
Mensagens: 621
Localização: Dourados-MS

Contato:

Re: Criação de menu utilizando ds_map

Mensagem por All-x » Seg Dez 03, 2018 3:52 pm

Tenho um vídeo sobre inventário com ds_grid.



Tu pode remover um item usando só o nome:

Código: Selecionar todos

remove_item("poção");
Tem um exemplo para baixar na descrição do vídeo. Não deve ser difícil adaptar ao teu projeto.

FLWS!
Começando com o Game Maker? Olhou para assinatura certa!

Imagem

Tutoriais e vídeo aulas de programação! Clique no Banner e confira!

Responder

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 5 visitantes