Ir para conteúdo
  • 0

math random e arrays


PsyMcKenzie

Pergunta

Bom galera, estou criando um script aqui e estou com uma duvida, se eu usar um item, nos items que estão nessa parte:

 

local items = {1234, 5678}

 

e colocar em certa parte do script isso:

 

doPlayerAddItem(cid,itemGain, math.random(1, 2))

 

Eu irei ganhar aleatoriamente um dos items que estão na parte " local items "?

Editado por PsyMcKenzie
Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

ver tutor http://www.xtibia.co...ost__p__1498235

mais vamos tenta explica

doPlayerAddItem(cid = player, itemid = iddoitem,count = quantos que vai ganha)

certo seria assim

local items = {1234, 5678}
doPlayerAddItem(cid,items[math.random(1,#items)], math.random(1, 2))

na parte que ta items[math.random(1,#items)] que vai sortear os ids

e outra parte que ta math.random(1, 2) que vai ser 1 ou 2 items

 

na parte que vc apostou

ta doPlayerAddItem(cid,itemGain, math.random(1, 2))

provavelmente deve ser uma variável que ta levando id do item

 

exemplo

itemGain = 2160

ai

ia dar 1 ou 2 crystal para player

Editado por notle2012
Link para o comentário
Compartilhar em outros sites

  • 0

Ah entendi mano, eu esqueci disso :

 

 

[math.random(1,#items)]

 

Agora eu entendi, obrigado ai notle

 

To sem rep cara, desculpa :/

 

 

@EDIT

Pode me ajudar aqui?

Traduz essa função pra mim:

 

if (math.random(0,100) < chance) then

 

Não entendi essa parte " < chance "

Editado por PsyMcKenzie
Link para o comentário
Compartilhar em outros sites

  • 0

exemplo

local chance = 30
if (math.random(0,100) < chance) then

if (math.random(0,100) < chance) then -- aqui vai ver se math.random(0,100) de 0 a 100 o que sair vai ser menor que chance no caso se é menor que 30 pq coloquei chance = 30 se for então vai acontecer algo

 

explica de outra maneira

if se

math.random(0,100) aqui vai sair aleatoriamente 0 a 100

< menor

chance aqui é uma variável

then então

Editado por notle2012
Link para o comentário
Compartilhar em outros sites

  • 0

Ah, entendi! Valew :D

 

Ultima duvida aqui mano, desculpe encomodar tanto assim.

 

doSendAnimatedText(toPosition, "XTibia!", TEXTCOLOR_GREEN)

 

Cara, ta vendo onde ta escrito XTibia!?

Como eu adiciono mais um texto? pra sair aleatoriamente - XTibia ou Eks ou EksTibia? Uso math.random também?

Link para o comentário
Compartilhar em outros sites

  • 0

local text = {"XTibia","Eks","EksTibia"} -- uma tabela de textos

random = text[math.random(1,#text)] -- variável que vai pega um texto aleatoriamente

 

por fim ficaria assim

 

doSendAnimatedText(toPosition, ""..random.."", TEXTCOLOR_GREEN)

Editado por notle2012
Link para o comentário
Compartilhar em outros sites

  • 0

você já aprendeu

Loops

o mais usando é for

 

deixa aqui como sair os textos

 


for i = 1,10 do -- vai rodar 10 vez
local text = {"XTibia","Eks","EksTibia","otserver","notle2012","PsyMcKenzie"}
random = text[math.random(1,#text)]
print (i.."ª "..random)
end

 

em

Order













e por ai vai :D

EDIT


local letras = {"O","K","D","X","N","Z","I","C","L","B","\n","D","E","N","L","O","T","E","O","L","N"}
for i = #letras,1 ,-2 do
print (letras[i])
end

Editado por notle2012
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...