Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 11:10
Estou fazendo um jogo de coletáveis e quero que um objeto apareça na room e so apareça outro quando o anterior for coletado. Mas preciso que apareça em lugares aleatórios da room. Como posso fazer?
Obrigado.
Obrigado.
- Ranking :
Notas recebidas : C
Data de inscrição : 07/09/2010
Número de Mensagens : 1400
Insígnias de JAM :x 0
x 0
x 0
Reputação : 21
Prêmios: 0
: 0
: 0
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 11:24
Determine uma condição para o outro objeto ser coletado, se ele for destruído ao ser coletado, você faz assim:
- Código:
if !instance_exists(obj_tal)
{instance_create(random(room_width),random(room_height),obj_tal2}
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 11:47
eu ja consigo fazer ele destruir quando coletado...esse codigo eu coloco no evento Create?
- Ranking :
Notas recebidas : C
Data de inscrição : 07/09/2010
Número de Mensagens : 1400
Insígnias de JAM :x 0
x 0
x 0
Reputação : 21
Prêmios: 0
: 0
: 0
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 12:00
Depende, é bom colocar no evento Destroy do objeto coletado para n ficar criando um monte.
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 12:40
Opa, consegui...mas infelizmente o objeto so cria 4 vezes, depois nao cria mais.
- Ranking :
Notas recebidas : C
Data de inscrição : 07/09/2010
Número de Mensagens : 1400
Insígnias de JAM :x 0
x 0
x 0
Reputação : 21
Prêmios: 0
: 0
: 0
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 13:13
Tenta no Create então.
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 13:17
Consegui resolver, o problema é que ele esta criando fora da room. Coloquei a room com as bordas solidas, mas ai tem vezes que o Obj nao esta aparecendo, acredito que seja isso. Eu tenho que colocar o tamanho que ha disponivel dentro da room certo?


- Ranking :
Notas recebidas : C
Data de inscrição : 07/09/2010
Número de Mensagens : 1400
Insígnias de JAM :x 0
x 0
x 0
Reputação : 21
Prêmios: 0
: 0
: 0
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 13:32
Se você estiver usando uma view, coloque assim:
- Código:
if !instance_exists(obj_tal)
{instance_create(random(view_xview[0]),random(view_yview[0]),obj_tal2}
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 13:48
Não estou usando view não...conseguiu ver a imagem? Não tem como colocar o tamanho da room e somente pode ser criado dentro deste tamanho?
segue o link,
https://redcdn.net/ihimg/photo/my-images/851/erroe.jpg/
segue o link,
https://redcdn.net/ihimg/photo/my-images/851/erroe.jpg/
- Ranking :
Notas recebidas : C
Data de inscrição : 07/09/2010
Número de Mensagens : 1400
Insígnias de JAM :x 0
x 0
x 0
Reputação : 21
Prêmios: 0
: 0
: 0
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 14:02
Mas se for assim meu código era pra estar certo.
Me passa por MP para eu resolver.
Me passa por MP para eu resolver.
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 14:10
isso acontece, porque ele pode ser criado em qualquer canto da room, até nos sólidos, determine um valor certo para ser criado, tenta colocar a random do mesmo tamanho q a room, exemplo:
if !instance_exists(obj_exemplo)
{instance_create(random(640),random(480),obj_exemplo}
if !instance_exists(obj_exemplo)
{instance_create(random(640),random(480),obj_exemplo}
- Ranking :
Notas recebidas : C
Data de inscrição : 26/09/2010
Número de Mensagens : 270
Insígnias de JAM :x 0
x 0
x 0
Reputação : 8
Prêmios: 0
: 0
: 0
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 14:22
X-Games escreveu:isso acontece, porque ele pode ser criado em qualquer canto da room, até nos sólidos, determine um valor certo para ser criado, tenta colocar a random do mesmo tamanho q a room, exemplo:
if !instance_exists(obj_exemplo)
{instance_create(random(640),random(480),obj_exemplo}
X-games esse código que você colocou e o mesmo que o TGNF postou acima.
{instance_create(random(room_width),random(room_height),obj_exemplo}
room_width = Largura da room que seria 640.
room_height = Altura da room que seria 480.
Pelo que vi na imagem o problema e que o objeto que ele quer criar pode ser criado em toda a dimensão da room mais o certo seria ele ser criado apenas dentro do espaço delimitado pelos blocos. Sendo assim é só ele diminuir o tamanho do bloco da largura e altura da room.
{
instance_create(random(room_width-32),random(room_height-32),object1);
}
Creio que isso de certo.

Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 14:27
Claro que ele iria fazer isso, só dei um exemplo de como ele faria.
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 14:30
X-Games escreveu:isso acontece, porque ele pode ser criado em qualquer canto da room, até nos sólidos, determine um valor certo para ser criado, tenta colocar a random do mesmo tamanho q a room, exemplo:
if !instance_exists(obj_exemplo)
{instance_create(random(640),random(480),obj_exemplo}
Coloquei um valor menor que o tamanho da room mas nao adiantou, minha room tem tamanho padrao, 640x480...coloquei no codigo 300x300 e nao adiantou, continuou criando o obj nos solidos.
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 20:15
Testei tanto o do carlos quanto o do X-games e continuou criando objetos nos solidos...
- Ranking :
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :x 0
x 1
x 0
Reputação : 52
Prêmios: 0
: 2
: 1
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 22:15
Amigo tente assim:
Supondo que seu objeto se chame obj_item, coloque no STEP do seu personagem principal ou de algum objeto de controle da fase:
the_obj = obj_item; //aqui o tal objeto
while (1)
{
if (instance_number(the_obj) > 0) break;
xx = iradom(room_width);
yy = iradom(room_height);
in = instance_place(xx, yy, all);
if (in != noone) continue;
in = instance_create(xx, yy, th_obj);
break;
}
Flws!
Supondo que seu objeto se chame obj_item, coloque no STEP do seu personagem principal ou de algum objeto de controle da fase:
the_obj = obj_item; //aqui o tal objeto
while (1)
{
if (instance_number(the_obj) > 0) break;
xx = iradom(room_width);
yy = iradom(room_height);
in = instance_place(xx, yy, all);
if (in != noone) continue;
in = instance_create(xx, yy, th_obj);
break;
}
Flws!
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 23:03
Vinians, obrigado pela ajuda. Mas me explica esse codigo por favor. nao consegui entender muito bem.
- Ranking :
Data de inscrição : 26/04/2010
Número de Mensagens : 1217
Insígnias de JAM :x 0
x 0
x 0
Reputação : 34
Prêmios: 0
: 1
: 0
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 23:18
Simplesmente faça isso:
Crie um objeto invisível e chame-o obj_controle, no evento create dele coloque
No evento alarm 0 coloque:
E no evento destroy do objeto à ser coletado, coloque:
PS.: VIVA OS ÍCONES!!
Crie um objeto invisível e chame-o obj_controle, no evento create dele coloque
- Código:
alarm[0]=room_speed//Um alarm é ativado, nesse caso o alarm 0 (como pode se ver entre as chaves), o tempo que definimos pra ele é o da room_speed
No evento alarm 0 coloque:
- Código:
instance_create(random(room_width), random(room_height), nome do objeto à ser coletado)// É criado um objeto, e por exemplo, se a room tiver width de 640, o objeto vai ser criado numa posição X aleatória entre 0 e 640, mesma coisa com a parte do Y
E no evento destroy do objeto à ser coletado, coloque:
- Código:
instance_create(random(room_width), random(room_height), nome do objeto à ser coletado)
PS.: VIVA OS ÍCONES!!

- Ranking :
Notas recebidas : C+D+D+D
Data de inscrição : 03/03/2011
Número de Mensagens : 252
Insígnias de JAM :x 0
x 0
x 0
Reputação : 10
Prêmios: 0
: 0
: 0
Re: Como fazer aparecer um objeto na room em modo Random?
em Sab 07 Maio 2011, 23:57
Poem assim na colisao do player com o obj a ser coletado:
ai na colisao do obj_a-ser-coletado com o player poem issso:
Nao testei mas olha se funfa
Espero ter ajudado...
Té+
- Código:
instance_create(random(room_width),random(room_height),obj_quevaiaparecer}
ai na colisao do obj_a-ser-coletado com o player poem issso:
- Código:
instance_destroy()
Nao testei mas olha se funfa
Espero ter ajudado...
Té+

Re: Como fazer aparecer um objeto na room em modo Random?
em Dom 08 Maio 2011, 11:14
Utilizei o codigo do vinians e parece ter funcionado. Obrigado a todos pela ajuda, valeu mesmo.
Ok Amigão. Tópico Trancado. Se precisar destranca-lo, contacte um moderador.
Ok Amigão. Tópico Trancado. Se precisar destranca-lo, contacte um moderador.
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum