HP personalizada e Inventário

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

HP personalizada e Inventário

Mensagem por wendreo_v em Qui 04 Out 2012, 09:25

Eu estou com dúvida em fazer uma barra de vida personalizada na vertical. Já consegui fazer na vertical já consegui fazer personalizada mais não consigo fazer as duas juntas.

E o inventário é um grande problema pra min pois todas engines que eu consegui eu não entendi e por isso não consegui aplicar nos meus jogos, vi diversos tutoriais também e não deu muito certo.
Se alguém conhece algum tutorial que ache bom, ou uma engine prática de inventário por favor mandem pra min.
Abraço.

wendreo_v

Ranking : Nota D
Número de Mensagens : 103
Idade : 19
Data de inscrição : 02/11/2011
Notas recebidas : D
Reputação : 2
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: HP personalizada e Inventário

Mensagem por Need 90 em Qui 04 Out 2012, 12:34

Para o inventário baixe essa engine :
Engine por Jiraya

Exporte os scripts da engine e importe no seu jogo, crie um objInv, nele coloque no Create :
Código:
mochila=inv_create(5,2);//cria um inventário com 5 slots na horizontal e 2 na vertical
inv_set_grid_size(mochila,32,32); //32 é o tamanho de cada quadro do inventário, pode mudar, mas repare que no jogo os slots mudam o tamanho.

No Global Left Press :
Código:
if (inv_catch(mochila,"Uva"))//checa se clicou no item Uva
{
    if (show_question("Comer Uva?"))
    {
    inv_item_delete(mochila,"uva",1);//delete 1 item Uva do inventário
    hp+=5
    show_message("Você recuperou 5hp");
    break;
    };
}
Ps : O código do step deve se repetir mudando todos os lugares onde possui o 'Uva' pelo nome do seu item;

No Global Right Press :
Código:
//você pode usar a função inv_catch para checar se o mouse esta em cima do item
if (inv_catch(mochila,"Uva"))//checa se clicou no item Uva
{
    if (show_question("Destruir Uva?"))
    {
    inv_item_delete(mochila,"Uva",1);
    break;
    };
}
A mesma coisa do código acima desse;

E Por final NESSE OBJETO coloque no draw :
Código:
draw_sprite(spr_Inv,-1,view_xview+5,view_yview+5)
inv_draw(mochila,10,10);//desenha o inventorio na tela

//desenha as barras de hp/mp
Y=10+inv_get_height(mochila)+2;
draw_healthbar(10,Y+3,10+inv_get_width(mochila),Y+8,hp,c_black,c_red,c_red,0,1,1);
draw_healthbar(10,Y+13,10+inv_get_width(mochila),Y+18,mp,c_black,c_blue,c_blue,0,1,1);
//===
Como pode ver, ali ele desenha o inventário e duas barras de hp e mp horizontais.

Agora crie um objeto Uva :
No create :
Código:
image_single=0; //Esse comando serve como o image_index=0 e image_speed=0 juntos, o 0 é o número da imagem em uma sprite
name="Uva"//O nome do objeto (isso é muito importante)

Vá em Add Event > Other > User Defined 0 :
Código:
if keyboard_check_pressed(ord("F")){
if (!inv_place_free(objInv.mochila,"Uva"))exit;//checa se tem espaço para o Uva
inv_add(objInv.mochila,sprite_index,image_index,"Uva",1);//adiciona 1 Uva no inventario
instance_destroy();
}
Esse código checa se você apertou F, se retornar verdadeiro, adiciona um objeto Uva no inventário.

Por final vá no objeto player e coloque na colisão com o objeto Uva ou no step com alguma condição e coloque :
Código:
with(other)event_user(0)

Está pronto seu inventário. Ps : Precisa possuir um objeto para cada item que você quer criar, mas todas as imagens deles podem estar na mesma imagem, pois basta você mudar o image_single para 1 ou 2...

Need 90

Ranking : Nota B
Número de Mensagens : 787
Data de inscrição : 16/01/2012
Notas recebidas : D+A+B
Reputação : 7
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://need90games.blogspot.com.br

Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum