GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» player não consegue andar
por lovn7 Qui 21 Nov 2024, 13:33

» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22

» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31

» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23

» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49

» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58

» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36

» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36

» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33

» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51

» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28

» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18

» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08

» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10

» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16

» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40

» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01

» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45

» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34

» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28

» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48

» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54

» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14

» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50


Retornar o nome da variável

+3
theguitarmester
Luca$
moisesBR
7 participantes

Ir para baixo

Retornar o nome da variável Empty Retornar o nome da variável

Mensagem por moisesBR Ter 20 Nov 2012, 09:10

Estou quebrando a cabeça tentando descobrir como fazer para mostrar o ítem que esto manipulando e tambem o valor dele. Eu sei que tem solução, mas não estou conseguindo descobrir e isso tá me deixando frustrado! Apesar de poder se resolvido usando inúmeros ifs, seria muito trabalhoso e tenho certeza que uma ou duas linhas de codes resolve isso! a questão é: quais codes usar ou como elabora-los?

Estou criando este post pois o outro ja está meio saturado(*) por minha própria questão e por que consegui reformular a pergunta:

Num draw_text, podemos usar: draw_text(x,y,string(variavel)) e o resultado é o valor que ela contem!
Mas que code posso usar para retornar o nome da própria variável?

tipo;

variavel1=25
draw_text(x,y,string(variavel1)) resultado: 25
???????????????????????????? resultado: variavel1

(*) Tópicos anteriores: transicao de variaveis entre numero e string,
controlar variaveis atraves de outras variaveis ou transportar


Última edição por moisesBR em Ter 20 Nov 2012, 10:53, editado 1 vez(es) (Motivo da edição : inserir lnk pros posts antigos para referência)
moisesBR
moisesBR

Data de inscrição : 24/10/2009
Reputação : 15
Número de Mensagens : 885
Prêmios : Retornar o nome da variável Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1


http://inprovise.blogspot.com/

Ir para o topo Ir para baixo

Retornar o nome da variável Empty Re: Retornar o nome da variável

Mensagem por Luca$ Ter 20 Nov 2012, 12:30

Amigo,estou sem o GM aqui,mas se não me engano,existe uma função chamada variable_name que retorna o nome da variável.

Mas não estou entendendo uma coisa,pra você saber qual variável pegar o valor,não precisa já saber o nome?Como você vai criar uma variável sem saber o nome?
Luca$
Luca$

Games Ranking : Nota D

Notas recebidas : D-C
Data de inscrição : 10/10/2010
Reputação : 1
Número de Mensagens : 582
Prêmios : Retornar o nome da variável Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Retornar o nome da variável Empty Re: Retornar o nome da variável

Mensagem por theguitarmester Ter 20 Nov 2012, 12:36

Não entendi muito bem para que aparecer o nome pela variavel, se você já sabe o nome dela!

sei que você provalvelmente sabe, mas para colocar texto é só colocar assim:
draw_text(x,y,'variavel1') Resultado: Variavel1

Explique mais para ver se consigo entender, vou dar uma olhada nos seus tópicos antigos.


Luca$, pelo menos no gm8 Não existe esta função.
theguitarmester
theguitarmester

Games Ranking : Nota C

Notas recebidas : B + C
Data de inscrição : 28/02/2012
Reputação : 139
Número de Mensagens : 2211
Prêmios : Retornar o nome da variável Empty

Medalhas x 0 Tutoriais x 4 Moedas x 0

Ouro x 2 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1
Plataformas :
  • Unity


http://guitarmester.no.comunidades.net/index.php?pagina=19362978

Ir para o topo Ir para baixo

Retornar o nome da variável Empty Re: Retornar o nome da variável

Mensagem por Luca$ Ter 20 Nov 2012, 12:43

É,realmente,me enganei,era outra função que retornava o nome da key,me desculpe.

Mas,moises,não consigo entender,pra que saber o nome da váriavel?
Luca$
Luca$

Games Ranking : Nota D

Notas recebidas : D-C
Data de inscrição : 10/10/2010
Reputação : 1
Número de Mensagens : 582
Prêmios : Retornar o nome da variável Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Retornar o nome da variável Empty Re: Retornar o nome da variável

Mensagem por theguitarmester Ter 20 Nov 2012, 13:01

Luca$, tambem não havia Entendido até olhar o outro Tópico dele: https://gmbr.forumeiros.com/t24736-transicao-de-variaveis-entre-numero-e-string

Moisés, Respondi lá nesse outro tópico.
theguitarmester
theguitarmester

Games Ranking : Nota C

Notas recebidas : B + C
Data de inscrição : 28/02/2012
Reputação : 139
Número de Mensagens : 2211
Prêmios : Retornar o nome da variável Empty

Medalhas x 0 Tutoriais x 4 Moedas x 0

Ouro x 2 Prata x 2 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 1
Plataformas :
  • Unity


http://guitarmester.no.comunidades.net/index.php?pagina=19362978

Ir para o topo Ir para baixo

Retornar o nome da variável Empty Re: Retornar o nome da variável

Mensagem por saim Ter 20 Nov 2012, 13:36

Não acho que seja possível. Mesmo porque, se houvesse uma função, o que você colocaria como argumento? A menos, claro, que essa variável seja o índice de um objeto ou background ou alguma coisa prevista nas funções *_get_name - aí você pode realmente armazenar um valor e ter um nome correspondente àquele valor.

Olha, eu não li os outros tópicos, não sei se alguém te sugeriu isso, mas tem um jeito que é levemente trabalhoso, mas perfeitamente viável. Grave tanto as variáveis quanto seus respectivos nomes em arrays. Tipo assim:
Código:
var i; i = 0;
variavel[i] = i; nome[i] = "variavel[" + string(i) + "]"; i += 1;
variavel[i] = i; nome[i] = "variavel[" + string(i) + "]"; i += 1;
(continua indefinidamente)
variavel[i] = i; nome[i] = "variavel[" + string(i) + "]"; i += 1;
nVariaveis = i;
Claro que você pode definir o valor que quiser e o nome que quiser pra cada variável, isso aí é só um exemplo.
Aí, se você quiser o valor da variável1, por exemplo, você usa
Código:
draw_text(x, y, string(variavel[1]));
e, se quiser o nome dela, escreve
Código:
draw_text(x, y, nome[1]);

Pra diminuir o trabalho que essa inicialização dá, você pode usar o excell, que tem a opção de concatenar textos, pra escrever o código.

[edit:] Dei uma lida rápida lá, acho que sei o que você quer. Esse método funciona, sim, desde que você entenda como usá-lo. Se por exemplo você escolher a fruta "3" e armazenar essa escolha na variável "frutaEscolhida", pode apresentar o texto como:
Código:
draw_text(x, y, "total de " + nome[frutaEscolhida] + ": " + variavel[frutaEscolhida])
Exemplo de resultado: "Total de mamão: 8"
Mas precisa tomar cuidado com os plurais. Escolhi "mamão" justamente pra mostrar que não é só acrescentar um "s" no final do nome que os casos em que "variavel[frutaEscolhida] > 1" que vai estar resolvido.
saim
saim

Games Ranking : Nota B

Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Reputação : 136
Número de Mensagens : 3033
Prêmios : Retornar o nome da variável Empty

Medalhas x 1 Tutoriais x 6 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 3

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Retornar o nome da variável Empty Re: Retornar o nome da variável

Mensagem por moisesBR Qua 21 Nov 2012, 10:11

Valeu saim mas infelizmente não consegui assimilar suas explicações... Mas de certo modo consegui fazer seguindo o tuto do Cabeção, apesar de resolver, não foi como eu esperava, pois desejo lidar com texto assim igual muitos aqui do forum que vê seus projetos empacarem por esbarrar nessa situação
Não acredito em impossibilidades! O impossível é igual a escuridão se voce acende a chama da esperança que nada mais é que a fé, ilumina o caminho das possibilidades.
Se alguem tiver uma possível solução, se quiser, é claro, faça uma mini engine pra mimnós, baseado no meu objetivo, que é: usar nomes de variaveis, string ou texto para retornar os dados desejados que podem estar num array conforme eu tento fazer aqui:
https://gmbr.forumeiros.com/t24736-transicao-de-variaveis-entre-numero-e-string#183610
moisesBR
moisesBR

Data de inscrição : 24/10/2009
Reputação : 15
Número de Mensagens : 885
Prêmios : Retornar o nome da variável Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1


http://inprovise.blogspot.com/

Ir para o topo Ir para baixo

Retornar o nome da variável Empty Re: Retornar o nome da variável

Mensagem por Rodrigo Santiago Sex 23 Nov 2012, 13:05

ninguem vai conseguir lhe ajudar porque e um erro logico, tente fazer isso:
recomece seu jogo, os codigos sempre ficam melhores na segunda vez

nao é brincadeira. se foi cometido um erro logico voce deve pensar de uma forma completamente diferente, e refazer se jogo deixa ele mais efttivo porque voce ja tem uma base do que fazer.
eu sei q nao era essa a pergunta mais isso pode lhe ajudar:
dica: padronize as variaveis em todos os objetos semelhantes, por exemplo:

todos os objetos que voce pode selecionar tem a variavel "type_obj" , e todo objeto que tem type_obj="iten" possue a variavel "quantidade"
todo objeto que tem type_obj="enemy" possue a variavel " healt"
voce pode criar switchs com type_obj e criar ifs com quantidade e healt sem erro.
Rodrigo Santiago
Rodrigo Santiago

Games Ranking : Nota B

Notas recebidas : C + C + B
Data de inscrição : 28/07/2012
Reputação : 73
Número de Mensagens : 1281
Prêmios : Retornar o nome da variável Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 3 Prata x 1 Bronze x 3

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Retornar o nome da variável Empty Re: Retornar o nome da variável

Mensagem por moisesBR Sex 23 Nov 2012, 15:32

Ops! esqueci de editar aqui! Ops de novo: tava sem energia aqui por três dias e não pude entrar na net decentemente.

Luca$ escreveu:Mas,moises,não consigo entender,pra que saber o nome da váriavel?
Luca$, leia o outro tópico que vai entender, mas já adianto um resumo: tenho problemas em associar números à coisas imagine uma imensa lista de ítens e sem ver sua posição como voce saberia qual, ou qual tem qual valor?

Rodrigo:
Meu type_obj é o selecionado! Recomeçar... Já pensei nisso seriamente... tanto é que estou apagando tudo quanto é codes do projeto e fazendo uma varredura geral, e de certo modo refazendo tudo!

Tipo, quando for setar um valor à um item de um arrary ou outra variável, diz a lenda que é assim: Cria-se o array....
Código:
//        Nome                        valor
item[0,0]="uva"          item[0,1]= 10
item[1,0]="laranja"      item[1,1]=12
item[2,0]="melancia"    item[2,1]= 3
Olhando assim parece fácil, mas quando for modificar esse valor o bicho pega, ainda mais se tiver uma lista imensa! A não ser que... Voce tenha duas janelas abertas para ir conferindo toda vez... E no caso que precise adicionar um valor a um ítem normalmente através de outro objeto, faria algo assim (no caso; "laranja"):
Código:
item[1,1] +=1
No meu caso, como disse, criei várias vars correspondentes(global.laranja) a cada ítem, e relacionei o valor à sua posição! e fui setando a principal(global.type_obj) com a nova var, dessa forma:
Código:
global.type_obj = global.laranja
Podem reparar queé muito mais fácil lidar com texto do que números, mesmo que este texto seja vars!

Aí vocé pergunta: como vai mostrar na tela o nome ou valor do item como desejava?
r- ao mostrar a posição na array, ela vai retornar o que estiver lá! nesse caso se for melancia, na array está: item[2,0]="melancia" item[2,1]= 3

Simplismente coloco num evento draw:
Código:
draw_text(y,y,"Selecionado: "+string(itens[global.selecionado,0])+" Qt. valor        : "+string(itens[global.selecionado,1]))
Resultado desse: "selecionado: melancia Qt. valor :3"

Quanto a este problema, foi aparentemente resolvido, como voce pode conferir no outro post, que apesar do nome ser diferente, o objetivo é o mesmo!

Veja o resultado aqui e como resolvi:
https://gmbr.forumeiros.com/t24736-transicao-de-variaveis-entre-numero-e-string#183610

Coloco como resolvido mas, enquanto o tópico estiver em aberto e dentro do prazo, ficarei feliz se novas ideias surgirem. Portanto fiquem a vontade.
A propósito, (pra quem não quiser ir no outro post) A solução(tosca) que encontrei para lidar com nomes das váriáveis:
Criar uma var para cada item com o nome desse item e dar um valor a ela! Valor esse que, resulta na sua posição numa array, que aprendi a usar recentemente!
Ainda usando a variável antiga, ao invés de seta-la com número, como é usado costumeiramente, seto-a no evento desejado que no caso é clique no objeto associado! Mais detalhe e até uma... ouso dize; mini "engine", no tópico do link acima.
No mas, obrigado a todos! Resouvídio!
moisesBR
moisesBR

Data de inscrição : 24/10/2009
Reputação : 15
Número de Mensagens : 885
Prêmios : Retornar o nome da variável Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1


http://inprovise.blogspot.com/

Ir para o topo Ir para baixo

Retornar o nome da variável Empty Re: Retornar o nome da variável

Mensagem por Jiraya Sex 23 Nov 2012, 15:47


Olhando assim parece fácil, mas quando for modificar esse valor o bicho pega, ainda mais se tiver uma lista imensa! A não ser que... Voce tenha duas janelas abertas para ir conferindo toda vez... E no caso que precise adicionar um valor a um ítem normalmente através de outro objeto, faria algo assim (no caso; "laranja"):

crie um script para alterar os valores mais facilmente

use isso
Código:

//setVal(variavel,valor)
var i;
for(i=0;i<NUMERO_DE_ITENS;i+=1;)
if(item[i,0]==argument0){item[i,1]=argument1;return(1);}
return(0);

para usar
setVal('Laranja',5);

se o valor foi alterado o script retornara ao valor 1, caso contrario a 0, isso significa que voce digitou o nome da variavel errado, ou ela nao existe.

o lado bom:facil
lado ruim:lento

Jiraya
Jiraya

Games Ranking : Nota A

Notas recebidas : A+A
Data de inscrição : 20/03/2010
Reputação : 108
Número de Mensagens : 1134
Prêmios : Retornar o nome da variável Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 1

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

https://www.facebook.com/seito.washiro.7

Ir para o topo Ir para baixo

Retornar o nome da variável Empty Re: Retornar o nome da variável

Mensagem por moisesBR Sex 23 Nov 2012, 16:04

Gostei entendi perfeitamente que setVal('Laranja',5); será no evento clique do objeto desejado... Mas como e onde eu colocaria o script?
Código:
//setVal(variavel,valor)
var i;
for(i=0;i<NUMERO_DE_ITENS;i+=1;)
if(item[i,0]==argument0){item[i,1]=argument1;return(1);}
return(0);
Steep?

Exemplo please!
moisesBR
moisesBR

Data de inscrição : 24/10/2009
Reputação : 15
Número de Mensagens : 885
Prêmios : Retornar o nome da variável Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1


http://inprovise.blogspot.com/

Ir para o topo Ir para baixo

Retornar o nome da variável Empty Re: Retornar o nome da variável

Mensagem por PedroX Sex 23 Nov 2012, 17:30

Você cria um script e coloca esse código lá.
Depois você coloca o nome do script, que é setVal() no evento que vai mudar o valor.

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
PedroX
PedroX

Games Ranking : Nota B

Notas recebidas : C+B
Data de inscrição : 26/07/2008
Reputação : 311
Número de Mensagens : 6087
Prêmios : Retornar o nome da variável Empty

Medalhas x 0 Tutoriais x 17 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

https://web.whatsapp.com/send?phone=5519995935953&text=Pedro

Ir para o topo Ir para baixo

Retornar o nome da variável Empty Re: Retornar o nome da variável

Mensagem por moisesBR Sex 23 Nov 2012, 18:25

Valeu! Puxa vida! Que complicado estava uma coisa simples!

Isso ocorreu por que eu não trabalhava com arrays! Aff... Mas beleza! é pra isso que estamos aqui aprender, ensinar, ajudar e se beneficiar!

Sei que apesar de já saber muita coisa, ninguém sabe de tudo e muito raramente poderei ajudar voces com codes complicados (falo de Jiraya, saim, Cabeção, Pedro X e outro m,ais e etecéteras) mas de certo modo estou ajudando colocando desafios meios esquisitos que surgem, servindo para todos users, e quebrando barreiras e adaptando ou redescobrindo criando novos meios.
Se eu puder ajudar em algo tenham certeza que tentarei.

A essa altura(rastros) creio que devo criar o tópico do meu projeto que sairá talvez no ano 3000! Ou nem saia! (kkkkkk) que voces acham?
Já deixei bem claro o que penso sobre inutis post, se quiserem opinar, pode ser por MP ou onde bem entenderem.

Mais uma vez obrigado! Tópico resolvido!
moisesBR
moisesBR

Data de inscrição : 24/10/2009
Reputação : 15
Número de Mensagens : 885
Prêmios : Retornar o nome da variável Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1


http://inprovise.blogspot.com/

Ir para o topo Ir para baixo

Retornar o nome da variável Empty Re: Retornar o nome da variável

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos