Results 1 to 3 of 3

Thread: Quando chamada pela primeira vez, math.random() retorna sempre o menor valor

  1. #1
    iBot User
    Join Date
    Sep 2012
    Posts
    239
    Mentioned
    10 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    46 Post(s)
    Reputation
    23
    Rep Power
    5

    Quando chamada pela primeira vez, math.random() retorna sempre o menor valor

    Quando você chama math.random(), ex. math.random(5) o primeiro valor retornado é sempre 1.

    Da segunda vez em diante, a função funciona corretamente, ou seja, valores aleatórios são retornados (1, 2, 3, 4, 5)

    math.random() tem que retornar um valor aleatório desde a primeira vez que a função é chamada, do contrário a sua aplicação pode ser comprometida dependendo do seu emprego.

    Testando o bug:

    Crie cerca de 10 (Persistent) Actions e add esse código para cada um deles:

    PHP Code:
    local test math.random(5)
    say(test)
    wait(10000
    Em todas as Actions, a primeira vez que ela é chamada (Enabled...) o valor retornado será sempre 1, e a partir da segunda vez, a função começa a funcionar devidamente. Esse problema precisa ser corrigido.

  2. #2
    iBot User
    Join Date
    May 2015
    Posts
    1
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    0 Post(s)
    Reputation
    10
    Rep Power
    2
    O Post é de 2013, mas o problema ainda não foi corrigido... existe alguma função parecida com math.random?

  3. #3
    iBot User reynald0's Avatar
    Join Date
    Jul 2012
    Location
    Praia Grande-SP
    Posts
    58
    Mentioned
    2 Post(s)
    Tagged
    0 Thread(s)
    Quoted
    6 Post(s)
    Reputation
    10
    Rep Power
    5
    O math.ramdom requer dois parâmetros. Ex:
    segue um exemplo do wait em milissegundos usando math.random. O resultado é uma espera próxima a 1 segundo:

    wait((1200-math.random(25, 225)))

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •