Endereçamento de recursos por string. Como faço?

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

Endereçamento de recursos por string. Como faço?

Mensagem por NeoDias em Seg 07 Maio 2012, 20:57

Queria saber como faço para formar, por exemplo, um nome de uma sprite por meio de strings. Estou desenvolvendo um script e preciso acessar alguns sprites de forma automatica e os nomes dessses sprites tem o seguinte formato: sprite_XX. XX são numeros que podem variar de 00 a 39. Se durante o evento de draw_sprite eu coloco como parametro "sprite_" + variavel, ele me retorna um erro, pois mesmo somando a string "sprite_" + a string "XX" que está numa variavel qualquer o programa não interpreta a string como sendo o nome do recurso, existe alguma função que converte uma string para nome de recurso? Era isso que gostaria de saber.

NeoDias

Número de Mensagens : 3
Data de inscrição : 23/05/2011
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: Endereçamento de recursos por string. Como faço?

Mensagem por luiz_eldorado em Seg 07 Maio 2012, 22:50

O que existe é a funcão "sprite_get_name(spr)". Você pode ficar procurando num for o nome, como nesse codigo:
Código:
for(i=0;i<numero_de_sprites;i+=1) {
if sprite_get_name(i)="sprite_"+variaver {s=i; break}
}
draw_sprite(x,y,s)
Até mais!

luiz_eldorado

Ranking : Nota C
Número de Mensagens : 928
Idade : 17
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

Re: Endereçamento de recursos por string. Como faço?

Mensagem por saim em Seg 07 Maio 2012, 22:50

Existe, variable_local_set(name,value), onde "name" é uma string que pode ser grada através de concatenação.
Mas o que você quer é usar arrays. Dê uma olhada em arrays, na minha assinatura.

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Endereçamento de recursos por string. Como faço?

Mensagem por PedroX em Seg 07 Maio 2012, 23:04

Você quer saber se existe uma função. Não existe.
Existe soluções, como o primeiro a responder citou.
Eu geralmente mapeio os resources nesses casos.


PedroX

Ranking : Nota C
Número de Mensagens : 6034
Idade : 21
Data de inscrição : 26/07/2008
Notas recebidas : C+B
Reputação : 286
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Endereçamento de recursos por string. Como faço?

Mensagem por Klior em Seg 07 Maio 2012, 23:43

Existe uma outra forma de fazer isso também.
execute_string("spr = sprite" + string(2));
draw_sprite(spr, 0, x, y);

Estou te dando essa dica mais NÃO aconselho que use, execute_string é lento, foi retirado do Gm HTML5 e Studio e por outros motivos.
para saber melhor leia: http://gmc.yoyogames.com/index.php?showtopic=322492

Mais se mesmo assim quiser fazer dessa forma, funcionara.

Eu usaria um simples array contento o nome de cada sprite...


Klior

Número de Mensagens : 426
Idade : 25
Data de inscrição : 07/03/2010
Reputação : 13
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Endereçamento de recursos por string. Como faço?

Mensagem por Conteúdo patrocinado Hoje à(s) 08:14


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