Avatar do usuário
DarlesLSF
Membro
Membro
Autor
Mensagens: 74
Registrado em: Qui Set 06, 2018 2:54 am
Localização: Humaitá - RS
Karma: 87

Criação de menu utilizando ds_map

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:
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:
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.

Tags:
 
Avatar do usuário
None
Colaborador
Colaborador
Mensagens: 158
Registrado em: Sáb Abr 14, 2018 8:11 pm
Karma: 321

Re: Criação de menu utilizando ds_map

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.
Cachorro-quente!!!

Como criar um jogo de RPG Japonês no estilo Final Fantasy https://goo.gl/efr6fx
 
Avatar do usuário
Alex FC
Administrador
Administrador
Mensagens: 460
Registrado em: Dom Abr 24, 2016 11:50 pm
Localização: Itaporã-MS
Karma: 558

Contato:

Re: Criação de menu utilizando ds_map

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:

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!

Quem está online

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