Postado Novembro 23, 2012 12 anos Aleatório Olá, estou a um tempo parado e decidi postar este tutorial conceitual. O objetivo hoje é explicar como funciona a função math.random(...) em lua. O que é aleatório? Por conceito aleatório é aquilo que é escolhido independente de qualquer valor, ao acaso. Aplicação? Na prática, não existe aplicação exata ao conceito, entretanto, utilizamos fórmulas matemáticas para gerar valores que fogem um pouco do controle do usuário. Quando se utiliza math.random por exemplo, você está pedindo para a máquina gerar um número, definirei portanto esta atitude como semi-aleatória. Por que semi-aleatório? Simples, quando você utiliza math.random, o computador gera um número através de uma base que foi fornecida, às vezes sem sua percepção, é a denominada semente. Semente? Planta? O conceito utilizado requer um pouco de imaginação para compreensão. Imagine que você planta uma semente de caju, daqui algum tempos a árvore crescerá, e você poderá colher os frutos. Com math.random também é assim, você define o valor de base, este valor vai dar origem a vários outros valores. O ser humano tem a capacidade de tomar múltiplas decisões? Não, ao menos não do ponto de vista matemático. As decisões são tomadas de acordo com as experiências que este acumulou e com o momento em que ele está, sendo importantes as variáveis do ambiente, pensemos na natureza como um computador gigantesco e de alta perfomance. OtServer Quando um OT inicia, a semente que eu citei anteriormente, é semada logo na inicialização, por isso os scripts não precisam utilizá-lo. Quando um .lua é criado separadamente, caso não se semeie os resultados serão sempre iguais. Resumo - Não entendeu? Leia o resumo... Sempre que você utiliza math.random, o computador gera um número de acordo com a base definida por math.randomseed. Contato; god.marinii [email protected]
Postado Dezembro 6, 2012 12 anos Se eu quiser gerar um numero aleatório de 50 a 100 como ficaria? Sdds old times! [show Off] Vampira
Postado Setembro 27, 2014 10 anos seu eu quisese um aleatório entre 3 items id:2156, 2158, 2154 e pra mim vim 5 item aleatorio entre os 3 ids 2156, 2158 ,2154 exemplo : 2 ~ 2156 e 1 ~ 2158 ou 1 ~ 2154 e 2 ~ 2158
Postado Setembro 27, 2014 10 anos local aleatorio = math.random(1,3) if aleatorio == 1 then aleatorio = 2154 elseif aleatorio == 2 then aleatorio = 2156 else aleatorio = 2158 end Editado Setembro 27, 2014 10 anos por Danves (veja o histórico de edições)
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.