[Resolvido]Problema ao usar a ds_grid

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

Resolvido [Resolvido]Problema ao usar a ds_grid

Mensagem por Ufrarion em Qui 04 Ago 2011, 12:31

Aew galera!!!

Eu estou usando uma ds_grid de 10x10, queria procurar nessa lista a primeira que estiver o seu conteudo "0" e depois usar na função "ds_grid_set".

Acho que é isso! Laughing


Última edição por ufrarion em Sex 05 Ago 2011, 06:55, editado 2 vez(es)

Ufrarion

Número de Mensagens : 222
Data de inscrição : 06/06/2010
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Problema ao usar a ds_grid

Mensagem por Carlos L. em Qui 04 Ago 2011, 13:22

Não deu para entender direito o que você quer, não sei mexer com lists mais sei que elas são matrizes, então se você quer simplesmente armazenar e depois localizar um dado em uma certa posição fiz esse código aqui.
Código:
var
    i, j, c, l, nome;
{
    for (i = 0; i < 9; i += 1)
    {
        for (j = 0; j < 9; j += 1)
        {
            nome[i, j] = get_string('Entre com um nome: ', '?');
        }
    }
    for (i = 0; i < 9; i += 1)
    {
        for (j = 0; j < 9; j += 1)
        {
            l = get_integer('Entre com o valor da linha. ', 'Linha');
            c = get_integer('Entre com o valor da coluna.', 'Coluna');
            show_message('O valor da posição ['+string(l)+', '+string(c)+'] é: '+ nome[l, c]);
        }
    }
    game_end();
}
Nesse código que estou lhe passando você armazena os dados na matriz, entra com o valor da linha e da coluna a ser pesquisado e depois mostra seu valor na tela, antes de testar tenha em mente que você entra-rá com 100 valores já que a lista que você esta fazendo é de 10x10.

OBS: Se você não sabe mexer com matrizes e pelo que eu li no manual do gm uma lista e uma matriz procure primeiro aprender a mexer com matrizes, fica a dica ;) .

Carlos L.

Ranking : Nota C
Número de Mensagens : 270
Data de inscrição : 26/09/2010
Notas recebidas : C
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Problema ao usar a ds_grid

Mensagem por Ufrarion em Qui 04 Ago 2011, 13:40

@Carlos L.

É que a ds_grid facilita muito no que eu estou fazendo (pelo menos para min), mas valeu!

Ufrarion

Número de Mensagens : 222
Data de inscrição : 06/06/2010
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Problema ao usar a ds_grid

Mensagem por vinians em Qui 04 Ago 2011, 13:54

Pode ser assim:
Código:

var w, h, i, j
w = 10;
h  = 10;
pesquisar = 0; //valor a pesquisar
setar = -1; //valor a coloar
grade = ds_grid_create(w, h); //sua grade
for (i = 0; i < w; i += 1)
{
for (j = 0; j < h; j += 1)
{
    if (ds_list_get(grade, i, j) == pesquisar)
  {
      ds_list_set(grade, i, j, setar);
  }
}
}
Isso deve funcionar!
Flws!

vinians

Ranking : Nota B
Número de Mensagens : 2490
Idade : 27
Data de inscrição : 18/09/2008
Notas recebidas : B-C-A-C
Reputação : 52
Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 1

http://xcreatorgames.weebly.com/

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Problema ao usar a ds_grid

Mensagem por Ufrarion em Qui 04 Ago 2011, 14:43

@vinians

Está acontecendo um erro esquisito, quando eu usei seu codigo o eixo "j" funciona corretamente mas o "i" preenche toda a coluna com o "0", estou usando esse codigo:

Código:
for (i = 0; i < 10; i += 1)
{
for (j = 0; j < 10; j += 1)
{
    if (ds_grid_get(draw.inv,i,j) == 0)
  {
      ds_grid_set(draw.inv,i,j,id)
      x = i*32
      x = j*32
      break
  }
}
}
Obs: o break eu botei senão o codigo não parava de verificar eo valor ia para no fim da lista.

Ufrarion

Número de Mensagens : 222
Data de inscrição : 06/06/2010
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Problema ao usar a ds_grid

Mensagem por vinians em Qui 04 Ago 2011, 15:16

Ah amigão ele troca tudo mesmo, substitua por isso:
Código:

sair = false;
for (i = 0; i < 10; i += 1)
{
  if (sair) break;
for (j = 0; j < 10; j += 1)
{
  if (sair) break;
    if (ds_grid_get(draw.inv,i,j) == 0)
  {
      ds_grid_set(draw.inv,i,j,id)
      x = i*32
      x = j*32
      sair = true;
  }
}
}
Agora sim!

vinians

Ranking : Nota B
Número de Mensagens : 2490
Idade : 27
Data de inscrição : 18/09/2008
Notas recebidas : B-C-A-C
Reputação : 52
Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 1

http://xcreatorgames.weebly.com/

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Problema ao usar a ds_grid

Mensagem por Ufrarion em Qui 04 Ago 2011, 20:00

@vinians

Funcionou direitinho! valeu mesmo cara! cheers
Obs: Onde está o "x" eo "y" para o item ir, tu botou dois "x", quebrei a cabeça por causa disso bravo kkkkkkkkkkkkk

Ufrarion

Número de Mensagens : 222
Data de inscrição : 06/06/2010
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Problema ao usar a ds_grid

Mensagem por luiz_eldorado em Qui 04 Ago 2011, 22:49

Tranquem o topico por favor.

luiz_eldorado

Ranking : Nota C
Número de Mensagens : 928
Idade : 18
Data de inscrição : 30/07/2011
Notas recebidas : C
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 1

http://luizpontes.tk/

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Problema ao usar a ds_grid

Mensagem por LCS em Sex 05 Ago 2011, 10:51

luiz_eldorado
Deixe a moderação para os moderadores, postar apenas para falar coisas desse tipo é flood.

Resolvido.
Trancado.

LCS

Ranking : Nota A
Número de Mensagens : 1035
Idade : 21
Data de inscrição : 09/03/2010
Notas recebidas : A
Reputação : 43
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 1

http://www.www.ww.www

Voltar ao Topo Ir em baixo

Resolvido Re: [Resolvido]Problema ao usar a ds_grid

Mensagem por Conteúdo patrocinado Hoje à(s) 03:02


Conteúdo patrocinado


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