problemas com codigo Random!

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

problemas com codigo Random!

Mensagem por peixoto em Sab 03 Nov 2012, 21:28

Bem, eu estava tentando fazer um sistema de fogo no meu jogo, usando o código:

Código:
fogoespalha = random(130)
fogoespalha2 = random(32)
if fogoespalha = 8
{
instance_create(x+fogoespalha2,y+fogoespalha2,obj_fire)
}
(no step)
porém, o comando random() não parece estar funcionando.
Alguem poderia identificar para min o erro no código?

peixoto

Ranking : Nota D
Número de Mensagens : 911
Idade : 21
Data de inscrição : 14/02/2010
Notas recebidas : D
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: problemas com codigo Random!

Mensagem por Luca$ em Sab 03 Nov 2012, 21:38

Qual o erro que está dando?
Se for uma mensagem de erro,mostre-nos.

Se for porque a instancia não está sendo criada,é porque a taxa de porcentagem está muito baixa, 1/16.

Luca$

Ranking : Nota D
Número de Mensagens : 582
Data de inscrição : 10/10/2010
Notas recebidas : D-C
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: problemas com codigo Random!

Mensagem por peixoto em Sab 03 Nov 2012, 21:43

Não dá mensagens de erro, porém não funciona(o que é estranho,pois em um outro objeto está funcionando perfeitamente).

E não compreendo o por que disso!
edit:
Parece ter funcionado agora, continuo sem entender o problema, mas ao menos agora funcionou.

peixoto

Ranking : Nota D
Número de Mensagens : 911
Idade : 21
Data de inscrição : 14/02/2010
Notas recebidas : D
Reputação : 3
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: problemas com codigo Random!

Mensagem por Alex FC em Sab 03 Nov 2012, 22:03

Cara a probabilidade de fogoespalha ser exatamente 8 é mínima. A função random() pega números de ponto flutuante (8.4, 129.3 e etc) logo para ser exatamente 8 fica difícil.

Use irandom(), ela pega números inteiros de 0 a X. No teu caso fogoespalha teria 1/130 (0,7%) de chance ser 8.

FLWS!

Alex FC

Ranking : Nota A
Número de Mensagens : 2503
Idade : 23
Data de inscrição : 20/12/2008
Notas recebidas : B A
Reputação : 174
Insignia 1 x 1 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 2
   : 1
   : 1

http://redscreensoft.blogspot.com

Voltar ao Topo Ir em baixo

Re: problemas com codigo Random!

Mensagem por Luca$ em Sab 03 Nov 2012, 22:18

Se pelo menos você nos falasse oque está realmente dando errado,seria mais fácil.

Luca$

Ranking : Nota D
Número de Mensagens : 582
Data de inscrição : 10/10/2010
Notas recebidas : D-C
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: problemas com codigo Random!

Mensagem por felipe.fonsecadepaula em Dom 04 Nov 2012, 01:23

fogoespalha = random(130)
fogoespalha2 = random(32)
if fogoespalha = 8
{
instance_create(x+fogoespalha2,y+fogoespalha2,obj_fire)
}

Se o codigo é exatamente esse voce errou no IF, pois voce esta dizendo que fogoespalha esta recebendo 8 e nao igual a 8.

Mas creio que nao seja esse o erro, pois isso daria um aviso de erro.

É oq disseram, é quase impossivel o espalhafogo ser igual a 8 pois a quantidade de valores entre 0 e 130 que o random pode gerar é infinito.

Para usar o random dessa maneiro é melhor voce escolher um IF que se torna verdadeiro para valores > ou < que um valor que vc queira.

E de preferencia faca random(10) e escolhe por ex: if espalhafogo >9.

Dessa forma tem 10% de chances de gerar fogo, oq nao eh tao grande.


felipe.fonsecadepaula

Ranking : Nota C
Número de Mensagens : 97
Idade : 30
Data de inscrição : 21/08/2012
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Voltar ao Topo Ir em baixo

Re: problemas com codigo Random!

Mensagem por PedroX em Dom 04 Nov 2012, 11:54

Há variáveis desnecessárias, você pode fazer assim:

Código:
if (irandom(130)==8)
{
var r;
r = irandom(32);
instance_create(x+r, y+r, obj_fire)
}

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: problemas com codigo Random!

Mensagem por Conteúdo patrocinado Hoje à(s) 07:54


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