AU

[Pedido] Comando Player Ganhar Montaria Randomica

Por augusto_2502, 11 de out. de 2012 em Scripts

9
1.2k
11 de outubro de 2012 às 14:21

Prezados, preciso de uma ajuda!

Estou com o seguinte Script que peguei aqui no fórum e fiz algumas anterações:

 

'function onSay(cid, words, param, channel)

for i = 3,3 do

doPlayerAddMount(cid, i)

end

return doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"Você Recebeu o War Bear!")

end'

 

Só que eu gostaria de colocar 3 ou 4 montarias e quando a pessoa desse este comando, que ele recebesse 2 dos 4 no random!

 

Tentei colocar por exemplo: 'for i = 3,13 do', só que quando o player dá o comando, ele recebe todas as montarias entre o 3 e o 13 e não somente as duas (3 e 13).

 

Então gostaria de colocar 4 montarias e quando o player desse o comando ele recebesse 2 delas no random e na mensagem onde está o WarBear, dizer quais foram ganhas!

 

Ajuda please?!

notle2012N
12 de outubro de 2012 às 23:57

não entendi muito bem mais acho que é +ou- isso que

vc quer...

que sair

montaria 13 ou a 3?

function onSay(cid, words, param, channel)
local x = math.random(1,100)
if x < 50 then
doPlayerAddMount(cid, 3)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você Recebeu 3") -- montarias numero 3 edita aqui a frase
elseif x > 51 then
doPlayerAddMount(cid, 13)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você Recebeu 13") -- montarias numero 13 edita aqui a frase
return true
end
end

Editado Outubro 13 por notle2012

13 de outubro de 2012 às 17:42

não entendi muito bem mais acho que é +ou- isso que

vc quer...

que sair

montaria 13 ou a 3?

function onSay(cid, words, param, channel)
local x = math.random(1,100)
if x < 50 then
doPlayerAddMount(cid, 3)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você Recebeu 3") -- montarias numero 3 edita aqui a frase
elseif x > 51 then
doPlayerAddMount(cid, 13)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você Recebeu 13") -- montarias numero 13 edita aqui a frase
return true
end
end

 

 

No caso eu iria querer 4 montarias, por exemplo: 2, 3, 13 e 19.

Ai por exemplo, ele iria dar o comando e no random receber uma das 4. (E aproveitando a pergunta, caso queira colocar pra ele receber duas das 4, como faço?)

Obrigado!

SlicerS
13 de outubro de 2012 às 18:01

ta ae..

function onSay(cid, words, param, channel)
local montarias = {2, 3, 13, 19}	--aki vc poe as montarias q o player pode receber
local qntdade = 2 --aki vc poe qnts ele pode receber

for i = 1, qntdade do
local x = math.random(#montarias)
doPlayerAddMount(cid, montarias[x])
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você Recebeu "..montarias[x])
table.remove(montarias, table.find(montarias, montarias[x]) or -1)
end
return true
end

Editado Outubro 13 por Slicer

13 de outubro de 2012 às 18:20

@Slicer

Funcionou certinho!

 

Só mais uma coisa, como eu coloco pra aparecer o nome das montarias e não os numeros?

E a pessoa pode usar o comando infinitamente, como faço pra deixar ela usando 1x só?

Editado Outubro 13 por augusto_2502

notle2012N
14 de outubro de 2012 às 01:13

editei o script do nosso amigo Slicer

fico assim

function onSay(cid, words, param, channel)
local montarias = {{id = 2,frase = "frase da montarias 2"},
{id = 3,frase = "frase da montarias 3"},
{id = 13,frase = "frase da montarias 13"},	  --aki vc poe as montarias e as frases
{id = 19,frase = "frase da montarias 19"},
}	
local qntdade = 2
local storage = 14787 -- storage 
if getPlayerStorageValue(cid,storage) == -1 then
for i = 1, qntdade do
local x = math.random(#montarias)
doPlayerAddMount(cid, montarias[x].id)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você Recebeu "..montarias[x].frase)
table.remove(montarias, table.find(montarias, montarias[x]) or -1)
setPlayerStorageValue(cid,storage,1)
end
return true
end
end

14 de outubro de 2012 às 01:39

editei o script do nosso amigo Slicer

fico assim

function onSay(cid, words, param, channel)
local montarias = {{id = 2,frase = "frase da montarias 2"},
{id = 3,frase = "frase da montarias 3"},
{id = 13,frase = "frase da montarias 13"},	  --aki vc poe as montarias e as frases
{id = 19,frase = "frase da montarias 19"},
}	
local qntdade = 2
local storage = 14787 -- storage
if getPlayerStorageValue(cid,storage) == -1 then
for i = 1, qntdade do
local x = math.random(#montarias)
doPlayerAddMount(cid, montarias[x].id)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você Recebeu "..montarias[x].frase)
table.remove(montarias, table.find(montarias, montarias[x]) or -1)
setPlayerStorageValue(cid,storage,1)
end
return true
end
end

 

Perfeito! Muito obrigado!

fokus090F
14 de outubro de 2012 às 08:02

Reportado para Moverem

 

Abraços !!

caoticC
14 de outubro de 2012 às 11:32

Duvida Resolvida.

Tópico Movido