Ir para conteúdo

[Action] Quest Com Premio Random - Melhorada


cayodiebe

Posts Recomendados

Gente eu tava passeando pelo xTibia, e vi um Script de quest com premio RANDOM feito por EitorLaba só que eu reparei, que tinha certos bugs no script dele, por exemplo, o player podia abrir a quest milhões de vezes, não tinha storage nela, então dei uma melhorada nela e trouxe para vocês...

 

 

1º Abra data/actions/ copie e cole 1 arquivo e o renomeie random.lua , e coloque isto lá dentro..

 

function onUse(cid, item)
if item.uid == 8989 then
queststatus = getPlayerStorageValue(cid,8799)
if queststatus == -1 then
local random = math.random(1, 3)
local items = {
[1] = {id=2160,quant=10,word="Parabéns, Você pegou 100k!"},
[2] = {id=2160,quant=5,word="Parabéns, você pegou 50k!"},
[3] = {id=2173,quant=1,word="Parabéns, você pegou Amulet of Loss!"},
}
setPlayerStorageValue(cid,8799,1)
doPlayerAddItem(cid, items[random].id, items[random].quant)
doCreatureSay(cid, items[random].word, TALKTYPE_ORANGE_1)
doSendMagicEffect(getThingPos(cid), 29)
else
doPlayerSendTextMessage(cid,22,"Ops, você já recebeu!")
end
end
end

 

EXPLICANDO: [1] = {id=2160,quant=10,word="Parabéns, Você pegou 100k!"}

 

Vermelho : ID DO ITEM QUE ELE VAI RECEBER

 

Verde : QUANTIDADE ...

 

AZUL : MENSAGEM QUE O PLAYER VAI RECEBER.

 

IMPORTANTE

SE QUISER ADICIONAR MAIS ALGUM PREMIO AO RANDOM,ADICIONE MAIS 1 LINHA, ABAIXO DO ITEM [3]

 

[4] = {id=XXXX,quant=ZZZZZZZZZZZ,word="YYYYYYYYYYYYYYYYYY"},

 

E NÃO SE ESQUEÇA DE MUDAR ENCIMA

 

local random = math.random(1, 3)

 

PARA

 

local random = math.random(1, 4)

 

 

Depois de fazer isso entre no actions.xml e adicione esta tag...

 

<action uniqueid="8989" script="quests/random.lua"/>

 

 

Créditos : Cayodiebe

 

EitorLaba

 

 

Se te ajudei , não custa dar REP+

Link para o comentário
Compartilhar em outros sites

Legal você ter usado meu script rs, mas ele é veeeeelho!

Eu melhorei bastante depois daquele script!

local items = {
[1] = {2160,10,"Parabéns, Você pegou 100k!"},
[2] = {2160,5,"Parabéns, você pegou 50k!"},
[3] = {2173,1,"Parabéns, você pegou Amulet of Loss!"}
}
local random = math.random(1, #items)


function onUse(cid, item, frompos, item2, topos)
storage = 9763

if getPlayerStorageValue(cid,storage) == -1 then
setPlayerStorageValue(cid,storage,1)
doPlayerAddItem(cid, items[random][1], items[random][2])
doCreatureSay(cid, items[random][3], TALKTYPE_ORANGE_1)
doSendMagicEffect(getCreaturePosition(cid), 29)
else
doPlayerSendTextMessage(cid,22,"Você já recebeu seu prêmio!")
end
end

 

E o seu script está com um erro ><

O último item de uma table não pode ter vírgula

Abraço.

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


function onUse(cid, item)
if getPlayerStorageValue(cid,8799) >= 1 then
return doPlayerSendTextMessage(cid,22,"Ops, você já recebeu!") end
local items= {{2160,10},{2160,5},{2173,1}}
local random = items[math.random(#items)]
setPlayerStorageValue(cid,8799,1)
doPlayerAddItem(cid, random[1], random[2])
doCreatureSay(cid, "você recebeu "..random[2].." "..getItemNameById(random[1]), TALKTYPE_ORANGE_1)
doSendMagicEffect(getThingPos(cid), 29)
return true
end

 

 

obs: n sabia que o 20cm era o eitorlaba uihiushiushIUHSiushIUShsIUS

bom saber xD

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


function onUse(cid, item)
if getPlayerStorageValue(cid,8799) >= 1 then
return doPlayerSendTextMessage(cid,22,"Ops, você já recebeu!") end
local items= {{2160,10},{2160,5},{2173,1}}
local random = items[math.random(#items)]
setPlayerStorageValue(cid,8799,1)
doPlayerAddItem(cid, random[1], random[2])
doCreatureSay(cid, "você recebeu "..random[2].." "..getItemNameById(random[1]), TALKTYPE_ORANGE_1)
doSendMagicEffect(getThingPos(cid), 29)
return true
end

 

 

obs: n sabia que o 20cm era o eitorlaba uihiushiushIUHSiushIUShsIUS

bom saber xD

 

Eu sou o SouRonaldo2 também kkkk, já fui banido umas 500x :\

Link para o comentário
Compartilhar em outros sites


function onUse(cid, item)
if getPlayerStorageValue(cid,8799) >= 1 then
return doPlayerSendTextMessage(cid,22,"Ops, você já recebeu!") end
local items= {{2160,10},{2160,5},{2173,1}}
local random = items[math.random(#items)]
setPlayerStorageValue(cid,8799,1)
doPlayerAddItem(cid, random[1], random[2])
doCreatureSay(cid, "você recebeu "..random[2].." "..getItemNameById(random[1]), TALKTYPE_ORANGE_1)
doSendMagicEffect(getThingPos(cid), 29)
return true
end

 

 

obs: n sabia que o 20cm era o eitorlaba uihiushiushIUHSiushIUShsIUS

bom saber xD

 

Eu sou o SouRonaldo2 também kkkk, já fui banido umas 500x :\

aham eu lembro iuhsiuhIUHIUhiuhiuhIUhishihii

conheço vc desde 2010 entao kk

boa

acho q eu tinha vc no msn até kk

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...

@Lokind

function onUse(cid, item)local storage = 5403
if getPlayerStorageValue(cid,storage) >= 1 then
return doPlayerSendTextMessage(cid,22,"Você já trocou sua vocação!") end
local name = {"Sorcerer","Druid","Paladin","Knight"}
local voc = math.random(1,4)
setPlayerStorageValue(cid,storage,1)
doPlayerSetVocation(cid, voc)
doCreatureSay(cid, "Agora você é um "..name[voc].."!", TALKTYPE_ORANGE_1)
doSendMagicEffect(getThingPos(cid), 29)
return true
end

 

Não testei, abraços.

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

×
×
  • Criar Novo...