Postado Abril 26, 2011 14 anos Fala galera, uma talk que eu fiz esses tempos e vou postar aqui. Como funciona: Você deve criar os monstros e depois adiciona-los ao script para poderem ser comprados. Palavras: !summon - Sumona o seu summon por certo tempo gastando uma certa quantidade de soul, caso você tenha comprado ele já.. !buysummon - Compra o summon por um preço. !sellsummon - Vende o summon por metade do preço que você comprou ele. !offer - Checa as ofertas de summons a venda. Talkaction: function onSay(cid, words, param) local buyprice = { ['rat'] = {price = 1000, message = "Parabéns, você comprou o Rat, cuide bem dele.", seconds = 10, soul = 30}, ['skeleton'] = {price = 10000, message = "Parabéns, você comprou o Skeleton, cuide bem dele.", seconds = 30, soul = 40}, ['demon'] = {price = 100000, message = "Parabéns, você comprou o Demon, cuide bem dele.", seconds = 60, soul = 50}, } local offert = "" if words == "!summon" then if getPlayerStorageValue(cid, 22000) ~= -1 then if #getCreatureSummons(cid) == 0 then if getPlayerSoul(cid) >= buyprice[getPlayerStorageValue(cid, 22000)].soul then doSummonPet(cid, getPlayerStorageValue(cid, 22000), buyprice[getPlayerStorageValue(cid, 22000)].seconds) doPlayerSendTextMessage(cid, 4, "Você usou seu summon, dentro de ".. buyprice[getPlayerStorageValue(cid, 22000)].seconds .." ele irá ser removido.") doPlayerAddSoul(cid, - (buyprice[getPlayerStorageValue(cid, 22000)].soul)) else doPlayerSendCancel(cid, "Você não tem soul suficiente.") doSendMagicEffect(getCreaturePosition(cid), 2) end else doPlayerSendCancel(cid, "Você não pode mais sumonar.") doSendMagicEffect(getCreaturePosition(cid), 2) end else doPlayerSendCancel(cid, "Você ainda não possui um summon.") doSendMagicEffect(getCreaturePosition(cid), 2) end end if words == "!buysummon" then if param ~= "" then if getPlayerStorageValue(cid, 22000) == -1 then if getPlayerMoney(cid) >= buyprice[string.lower(param)].price then setPlayerStorageValue(cid, 22000, string.lower(param)) doPlayerSendTextMessage(cid, 4, buyprice[string.lower(param)].message) doPlayerRemoveMoney(cid, buyprice[string.lower(param)].price) else doPlayerSendCancel(cid, "Você não tem dinheiro suficiente para comprar este summon.") doSendMagicEffect(getCreaturePosition(cid), 2) end else doPlayerSendCancel(cid, "Você já possui um summon.") doSendMagicEffect(getCreaturePosition(cid), 2) end else doPlayerSendCancel(cid, "Escolha o summon a ser comprado.") doSendMagicEffect(getCreaturePosition(cid), 2) end end if words == "!sellsummon" then if getPlayerStorageValue(cid, 22000) ~= -1 then doPlayerAddMoney(cid, (buyprice[getPlayerStorageValue(cid, 22000)].price)*5/10) doPlayerSendTextMessage(cid, 4, "Summon vendido com sucesso.") setPlayerStorageValue(cid, 22000, -1) else doPlayerSendCancel(cid, "Você não possui um summon.") doSendMagicEffect(getCreaturePosition(cid), 2) end end if words == "!offer" then for name, _ in pairs(buyprice) do offert = offert == "" and "Summons: \n\n" .. name .. " " .. buyprice[name].price or offert .. "\n" .. name .. " " .. buyprice[name].price end doShowTextDialog(cid, 2160, offert) end return TRUE end Adicione o script acima em data/talkactions/scripts. Tag: <talkaction words="!summon;!buysummon;!sellsummon;!offer" script="NomeDoArquivo.lua" /> Como adicionar mais monstros ao comando: function doSummonPet(cid, name, time) if isMonster(getCreatureByName(name)) then local sum = doSummonMonster(cid, name) if type(time) == "number" then addEvent(doRemovePet, time*1000, cid, name) end else return error("Creature not found!") end end function doRemovePet(cid, name) for y, x in ipairs(getCreatureSummons(cid)) do if isCreature(x) then if string.lower(getCreatureName(x)) == name then doRemoveCreature(x) break end end end end Adicione isso em data/lib/functions para que funcione. É isso, até mais. Mostrar conteúdo oculto local buyprice = { ['rat'] = {price = 1000, message = "Parabéns, você comprou o Rat, cuide bem dele.", seconds = 10, soul = 30}, ['skeleton'] = {price = 10000, message = "Parabéns, você comprou o Skeleton, cuide bem dele.", seconds = 30, soul = 40}, ['demon'] = {price = 100000, message = "Parabéns, você comprou o Demon, cuide bem dele.", seconds = 60, soul = 50}, } Adicionando: ['rat'] = {price = 1000, message = "Parabéns, você comprou o Rat, cuide bem dele.", seconds = 10, soul = 30}, Price é o preço para comprar o summon, Message é a mensagem que irá aparecer quando o summon for comprado. Seconds é o tempo que o summon durará quando for sumonado. Se desejar que seja infinito, coloque seconds = FALSE Soul é quanto que gastará de soul para sumonar o monstro. Funções:
Postado Abril 26, 2011 14 anos Olha quem eu vejo por aqui (:, Grande professor Demonb. @Topic Simplesmente incrivel cara, Como todos seu script. Abraços Kimoszin
Postado Abril 26, 2011 14 anos Cara, que grande criatividade. Eu nunca pensaria nisso... HUDSAHDSUUDA Muito foda :} Até
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.