[Ajuda] Inventário

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

[Ajuda] Inventário

Mensagem por leocc em Seg 28 Abr 2014, 00:18

Usei como base esse tutorial https://www.youtube.com/watch?v=Iy_ei_BXfV0  para criar um inventário pro meu jogo, no jogo em si tem a parte antes de iniciar a fase que é comprado upgrades e itens, e também tem os itens pego nas fases e ta tudo certo, porém não to conseguindo utilizar("chamar") os itens, vou mostrar o problema.

Esses são basicamente os códigos do inventario
objeto control
Código:
sprites[0]=slot_null
sprites[1]=spr_key
sprites[2]=spr_bomb
sprites[3]=spr_gun
sprites[4]=spr_rope
//sprites[5]=spr_vida
//sprites[6]=spr_VelAtaque

objects[1]=obj_key_item
objects[2]=obj_bomb_item
objects[3]=obj_gun_item
objects[4]=obj_rope_item
//objects[5]=obj_vida
//objects[6]=obj_VelAtaque

for(i=0;i<4;i+=1){
    inv[i,0]=0
    inv[i,1]=0
}

obj slot
Código:
if control.inv[index,0]!=0{
    control.inv[index,1]-=1
    obj=control.inv[index,0]      
    
    if room = Menu2
    {
     global.Money+= control.objects[obj].preco/2;
    if control.inv[index,1]=0{
        control.inv[index,0]=0
    }
    }
}
obj_item
Código:
global.slot=-1
for(i=0;i<4;i+=1){
    if control.inv[i,0]=index{
        global.slot=i
        break;
    }
}

if global.slot=-1{
    for(i=0;i<4;i+=1){
        if control.inv[i,0]=0{
            global.slot=i
            break;
        }
    }
  if room = Menu2 {
    if(global.slot!=-1){      
            if(control.objects[index].preco <= global.Money){
                 control.inv[global.slot,0]=index;
            }      
    }


 if(global.slot!=-1){
    if(control.inv[global.slot,1]==0){
            
        if(control.objects[index].preco <= global.Money){
              global.Money-= control.objects[control.inv[global.slot,0]].preco;
              control.inv[global.slot,1]+=1;
             }
        
        }
    }
}
}
if(global.slot!=-1){                
                 control.inv[global.slot,0]=index;
            }      
  

 if(global.slot!=-1){
    if(control.inv[global.slot,1]==0){          
          control.inv[global.slot,1]+=1;
          
                
          
          
          instance_destroy()


//instance_destroy()

}
}

obj Chave
Código:
index=1
preco=100

E esse é o código onde eu to tentando usar o item
Código:
if device_mouse_check_button(global.bot_pressed[0], mb_left)
    {
    var mix, miy;
    mix = scr_mouse_gui_x(device_mouse_raw_x(global.bot_pressed[0]));
    miy = scr_mouse_gui_y(device_mouse_raw_y(global.bot_pressed[0]));
    
   if global.hp > 80 and distance_to_object(obj_Player) < 150
    {
    show_message ('isso é um assalto, passa a chave do escritorio')
            show_message('desculpe senhor, pegue o dinheiro do caixa, mas não tenho a chave do escritorio')
            instance_create(global.Player_x + 100,global.Player_y + 100, dinheiro)
                                   }
                      
            if distance_to_object(obj_Player) < 150 and global.hp < 80 and (control.objects[1] = false)
           {            
            show_message ('leve isso, só não me machuque')
            instance_create(global.Player_x + 150,global.Player_y + 150, obj_key_item)
                                                          }
                                  
            if (control.objects[1] = true)  and distance_to_object(obj_Player) < 150
            {
            show_message ('por favor nao me machuque')
            

ja tentei usar (instance_exists (obj_key_item) = false) mas ele só reconhece o item quando ta na room, e não quando ta no inventório. São 4 slots e quando eu pego um item ele vai pra um slot aleatório dos 4, tipo eu tenho a chave e a arma, se eu pegar a arma primeiro ela vai pro slot 1 e pegando a chave ela vai pro slot 2, se eu pegar a chave primeiro ela vai pro slot 1 e assim sucessivamente.

leocc

Número de Mensagens : 87
Idade : 23
Data de inscrição : 09/08/2013
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

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