Aprenda a fazer um simples inventório (mochila), que servirá de base para você fazer o seu próprio sistema, no seu jogo.
Para este tutorial, você precisa:
- Game Maker (qualquer versão recente)
- Noção básica de arrays e draw.
Preparando os recursos
Você vai precisar das sprites dos itens que o seu inventório vai possuir.
Eu estou usando duas sprites que vem junto com o game maker, somente para teste.
Se você entrar na pasta do game maker, clicar em 'Sprites' e entrar em 'Itens', verá alguns itens que podem ser usados.
Você deve ter em mente que todos os itens devem ter o mesmo tamanho.
Eu estou usando itens de 32x32.
Começando a fazer
Com os sprites criados, deixe eles como estão, não centralize.
Crie um objeto, chame-o como quiser.
Adicione um evento CREATE e adicione o código:
Código: Selecionar todos
mochila[0,0]=5; //numero de itens de energia
mochila[0,1]='Energia'; //nome do item
mochila[0,2]='Carregue sua energia'; //descrição
mochila[0,3]=spr_energia; //sprite
mochila[1,0]=6; //numero de itens de vida
mochila[1,1]='Vida'; //nome
mochila[1,2]='Aumente sua vida'; //descrição
mochila[1,3]=spr_item_vida; //sprite para o item
maximo=11; //soma dos itens (5+6)
sx=0; //variavel para detectar o item selecionado
sy=0; //variavel para detectar o item selecionado
Código: Selecionar todos
xx=0; yy=0;
for(i=0; i<=1; i+=1)
{
repeat mochila[i,0] {
draw_sprite(mochila[i,3],0,xx,yy)
xx+=32;
if xx>=4*32 {xx=0; yy+=32;
}
inventorio[xx/32+4*yy/32,2]=mochila[i,2]
}
}
sx=floor(mouse_x/32);
sy=floor(mouse_y/32);
draw_set_color(c_yellow)
draw_rectangle(sx*32,sy*32,(sx+1)*32,(sy+1)*32,1)
draw_set_color(0)
if ((sx <= 4 && sy<floor(maximo/4)) or (sy>0 && sx<(maximo mod 4))) && sy<=floor(maximo/4)
{
if (sx==0)
draw_text(mouse_x,mouse_y,inventorio[4*sy+1,2])
else
if (sx>0){
draw_text(mouse_x,mouse_y,inventorio[4*sy+1+sx,2])
}
}
Até mais!