.Qual servidor ou website você utiliza como base?
8.60 0.4
Qual o motivo deste tópico?
Edição no script!
Você tem o código disponível? Se tiver publique-o aqui:
<?xml version="1.0" encoding="UTF-8"?>
<mod name="simple_task" version="3.0" author="Vodkart" contact="xtibia.com" enabled="yes">
<config name="task_func"><![CDATA[
tasktabble = {
["demonio"] = {monster_race={"demonio"}, storage_start = 200265, storage = 91065,count = 200,exp = 30000,money = 15000, reward = {{13511,1}}},
["moita"] = {monster_race={"moita"}, storage_start = 200264, storage = 91064,count = 200,exp = 30000,money = 15000, reward = {{13512,1}}},
["orakas"] = {monster_race={"orakas"}, storage_start = 200263, storage = 91063,count = 200,exp = 25000,money = 12000, reward = {{13513,1}}},
["verme de zaion"] = {monster_race={"verme de zaion"}, storage_start = 200262, storage = 91062,count = 200,exp = 20000,money = 9000, reward = {{13514,1}}},
["dalamor"] = {monster_race={"dalamor"}, storage_start = 200261, storage = 91061,count = 200,exp = 20000,money = 8000, reward = {{13515,1}}},
["arguda"] = {monster_race={"arguda"}, storage_start = 200260, storage = 91060,count = 200,exp = 15000,money = 5000, reward = {{13516,1}}},
["besta do pantano"] = {monster_race={"besta do pantano"}, storage_start = 200259, storage = 91059,count = 200,exp = 15000,money = 5000, reward = {{13517,1}}},
["rabutri"] = {monster_race={"rabutri"}, storage_start = 200258, storage = 91058,count = 200,exp = 15000,money = 5000, reward = {{13518,1}}},
["vampiro"] = {monster_race={"vampiro"}, storage_start = 200257, storage = 91057,count = 200,exp = 10000,money = 5000, reward = {{13519,1}}},
["aranha de cristal"] = {monster_race={"aranha de cristal"}, storage_start = 200256, storage = 91056,count = 200,exp = 40000,money = 15000, reward = {{13520,1}}},
["pata rachada"] = {monster_race={"pata rachada"}, storage_start = 200255, storage = 91055,count = 200,exp = 40000,money = 20000, reward = {{13521,1}}},
["gigante"] = {monster_race={"gigante"}, storage_start = 200254, storage = 91054,count = 150,exp = 30000,money = 10000, reward = {{13522,1}}},
["crocodilo"] = {monster_race={"crocodilo"}, storage_start = 200253, storage = 91053,count = 100,exp = 10000,money = 6000, reward = {{13220,1}}},
["zumbi"] = {monster_race={"zumbi"}, storage_start = 200252, storage = 91052,count = 300,exp = 20000,money = 10000, reward = {{13218,1}}},
["fantasma"] = {monster_race={"fantasma"}, storage_start = 200251, storage = 91051,count = 300,exp = 40000,money = 20000, reward = {{13219,1}}},
["hydra"] = {monster_race={"hydra"}, storage_start = 200250, storage = 91050,count = 300,exp = 40000,money = 20000, reward = {{13217,1}}},
["dragao"] = {monster_race={"dragao"}, storage_start = 200249, storage = 91049,count = 300,exp = 40000,money = 20000, reward = {{13210,1}}},
["groto"] = {monster_race={"groto"}, storage_start = 200248, storage = 91048,count = 200,exp = 25000,money = 7000, reward = {{13155,1}}},
["gork"] = {monster_race={"gork"}, storage_start = 200247, storage = 91047,count = 100,exp = 40000,money = 10000, reward = {{13154,1}}},
["caranguejeira"] = {monster_race={"caranguejeira"}, storage_start = 200246, storage = 91046,count = 100,exp = 4000,money = 4000, reward = {{13151,1}}},
["tartaruga gigante"] = {monster_race={"tartaruga gigante"}, storage_start = 200245, storage = 91045,count = 150,exp = 10000,money = 10000, reward = {{13127,1}}},
["tartaruga"] = {monster_race={"tartaruga"}, storage_start = 200244, storage = 91044,count = 300,exp = 5000,money = 6000, reward = {{13128,1}}},
["aranha mae"] = {monster_race={"aranha mae"}, storage_start = 200242, storage = 91042,count = 300,exp = 40000,money = 10000, reward = {{13129,1}}},
["rex"] = {monster_race={"rex"}, storage_start = 200241, storage = 91041,count = 100,exp = 30000,money = 10000, reward = {{13130,1}}},
["triceratops"] = {monster_race={"triceratops"}, storage_start = 200240, storage = 91040,count = 150,exp = 30000,money = 10000, reward = {{13131,1}}},
["persona"] = {monster_race={"persona","monstro de agua"}, storage_start = 200239, storage = 91039,count = 200,exp = 25000,money = 10000, reward = {{13132,1}}},
["golem de lodo"] = {monster_race={"monstro da caverna","golem de lodo"}, storage_start = 200238, storage = 91038,count = 100,exp = 4000,money = 3000, reward = {{13133,1}}},
["gosma"] = {monster_race={"gosma"}, storage_start = 200237, storage = 91037,count = 50,exp = 5000,money = 2000, reward = {{13134,1}}},
["vesma"] = {monster_race={"vesma"}, storage_start = 200236, storage = 91036,count = 300,exp = 40000,money = 3000, reward = {{13135,1}}},
["dragao filhote"] = {monster_race={"dragao filhote"}, storage_start = 200235, storage = 91035,count = 150,exp = 25000,money = 10000, reward = {{13136,1}}},
["monstro"] = {monster_race={"monstro","monstro do pantano"}, storage_start = 200234, storage = 91034,count = 150,exp = 4500,money = 3000, reward = {{13137,1}}},
["rato"] = {monster_race={"rato","ratazana"}, storage_start = 200233, storage = 91033,count = 50,exp = 400,money = 500, reward = {{13126,1}}},
["aranha"] = {monster_race={"aranha","aranha venenosa"}, storage_start = 200232, storage = 91032,count = 50,exp = 2000,money = 1000, reward = {{13138,1}}},
["lobo"] = {monster_race={"lobo","lobo assassino","lobo branco"}, storage_start = 200231, storage = 91031,count = 150,exp = 4500,money = 2000, reward = {{13139,1}}},
["verme"] = {monster_race={"verme"}, storage_start = 200230, storage = 91030,count = 150,exp = 6000,money = 3000, reward = {{13140,1}}},
["ogro"] = {monster_race={"ogro","ogro guerreiro","ogro alado","ogro barbaro","ogro enfurecido"}, storage_start = 200229, storage = 91029,count = 150,exp = 10000,money = 3000, reward = {{13141,1}}},
["besouro"] = {monster_race={"besouro"}, storage_start = 200228, storage = 91028,count = 50,exp = 900,money = 1000, reward = {{13142,1}}},
["vespa"] = {monster_race={"vespa"}, storage_start = 200227, storage = 91027,count = 50,exp = 1200,money = 1000, reward = {{13143,1}}},
["centopeia"] = {monster_race={"centopeia"}, storage_start = 200226, storage = 91026,count = 50,exp = 1700,money = 1000, reward = {{13144,1}}},
["serpente"] = {monster_race={"serpente"}, storage_start = 200225, storage = 91025,count = 50,exp = 500,money = 1000, reward = {{13145,1}}},
["escorpiao"] = {monster_race={"escorpiao"}, storage_start = 200224, storage = 91024,count = 50,exp = 2250,money = 1000, reward = {{13146,1}}},
["troll"] = {monster_race={"troll"}, storage_start = 20023, storage = 91023,count = 500,exp = 25000,money = 10000, reward = {{13147,1}}},
["cyclops"] = {monster_race={"cyclops"}, storage_start = 20022, storage = 91022,count = 500,exp = 25000,money = 10000, reward = {{13148,1}}},
["ursos"] = {monster_race={"urso"}, storage_start = 200221, storage = 91021,count = 50,exp = 1150,money = 1000, reward = {{13149,1}}},
["minotauros"] = {monster_race={"minotauro","minotauro guarda","minotauro mago","minotauro arqueiro"}, storage_start = 200220, storage = 91020,count = 1000,exp = 30000,money = 10000, reward = {{13150,1}}}
}
configbosses_task = {
{race = "minotaur",Playerpos = {x = 189, y = 57, z = 7}, FromPosToPos = {{x = 186, y = 54, z = 7},{x = 193, y = 60, z = 7}},time = 5},
{race = "necromancer",Playerpos = {x = 196, y = 39, z = 7}, FromPosToPos = {{x = 195, y = 37, z = 7},{x = 198, y = 41, z = 7}}, time = 5},
{race = "dragon",Playerpos = {x = 208, y = 59, z = 7}, FromPosToPos = {{x = 206, y = 56, z = 7},{x = 209, y = 65, z = 7}}, time = 5}
}
function CheckTask(cid)
for k, v in pairs(tasktabble) do
if getPlayerStorageValue(cid,v.storage_start) >= 1 then return true end
end
return false
end
function finisheAllTask(cid)
local config = {
exp = {true,0000},
money = {true,0000},
items ={true,{{000,2},{0000,1}}}
}
local x = true
for k, v in pairs(tasktabble) do
if tonumber(getPlayerStorageValue(cid,v.storage)) then
x = false
end
end
if x == true then
setPlayerStorageValue(cid, 521456, 0)
local b = getGlobalStorageValue(63005) if b == -1 then b = 1 end
if b < 11 then
setGlobalStorageValue(63005,b+1)
doBroadcastMessage('[Voce Completou a tarefa] '..getCreatureName(cid)..' was the '..b..' para termina a tarefa!.')
doPlayerAddPremiumDays(cid, config.premium[1] == true and config.premium[2] or 0)
doPlayerAddExp(cid, config.exp[1] == true and config.exp[2] or 0)
doPlayerAddMoney(cid, config.money[1] == true and config.money[2] or 0)
if config.items[1] == true then doAddItemsFromList(cid,config.items[2]) end
doItemSetAttribute(doPlayerAddItem(cid, 7369), "name", "trophy "..getCreatureName(cid).." completou todo as tarefas.")
end
end
end
function HavePlayerPosition(cid, from, to)
return isInRange(getPlayerPosition(cid), from, to) and true or false
end
function getRankStorage(cid, value, max, RankName) -- by vodka
local str =""
str = "--[".. (RankName == nil and "RANK STORAGE" or ""..RankName.."") .."]--\n\n"
local query = db.getResult("SELECT `player_id`, `value` FROM `player_storage` WHERE `key` = "..value.." ORDER BY cast(value as INTEGER) DESC;")
if (query:getID() ~= -1) then k = 1 repeat if k > max then break end
str = str .. "\n " .. k .. ". "..getPlayerNameByGUID(query:getDataString("player_id")).." - [" .. query:getDataInt("value") .. "]"
k = k + 1 until not query:next() end return doShowTextDialog(cid, 2529, str)
end
function getItemsInContainerById(container, itemid) -- Function By Kydrai
local items = {}
if isContainer(container) and getContainerSize(container) > 0 then
for slot=0, (getContainerSize(container)-1) do
local item = getContainerItem(container, slot)
if isContainer(item.uid) then
local itemsbag = getItemsInContainerById(item.uid, itemid)
for i=0, #itemsbag do
table.insert(items, itemsbag[i])
end
else
if itemid == item.itemid then
table.insert(items, item.uid)
end
end
end
end
return items
end
function doPlayerAddItemStacking(cid, itemid, quant) -- by mkalo
local item = getItemsInContainerById(getPlayerSlotItem(cid, 3).uid, itemid)
local piles = 0
if #item > 0 then
for i,x in pairs(item) do
if getThing(x).type < 100 then
local it = getThing(x)
doTransformItem(it.uid, itemid, it.type+quant)
if it.type+quant > 100 then
doPlayerAddItem(cid, itemid, it.type+quant-100)
end
else
piles = piles+1
end
end
else
return doPlayerAddItem(cid, itemid, quant)
end
if piles == #item then
doPlayerAddItem(cid, itemid, quant)
end
end
function getItemsFromList(items) -- by vodka
local str = ''
if table.maxn(items) > 0 then
for i = 1, table.maxn(items) do
str = str .. items[i][2] .. ' ' .. getItemNameById(items[i][1])
if i ~= table.maxn(items) then str = str .. ', ' end end end
return str
end
function doAddItemsFromList(cid,items) -- by vodka
if table.maxn(items) > 0 then
for i = 1, table.maxn(items) do
local count = items[i][2]
while count > 0 do
if isItemStackable(items[i][1]) then
doPlayerAddItemStacking(cid, items[i][1], 1)
else
doPlayerAddItem(cid, items[i][1],1)
end
count = count - 1
end
end
end
end
function pairsByKeys(t, f)
local a = {}
for n in pairs(t) do table.insert(a, n) end
table.sort(a, f)
local i = 0
local iter = function ()
i = i + 1
if a[i] == nil then return nil
else return a[i], t[a[i]]
end
end
return iter
end
]]></config>
<event type="login" name="TaskLogin" event="script"><![CDATA[
function onLogin(cid)
registerCreatureEvent(cid, "KillTask")
return true
end]]></event>
<talkaction words="!tarefa" event="buffer"><![CDATA[
domodlib('task_func')
local param = string.lower(param)
if param == "rank" then
getRankStorage(cid, 521456, 20, "Task Rank Finalizadas") return true
end
local str = ""
str = str .. "Lista de Tarefas :\n\n"
for k, v in pairsByKeys(tasktabble) do
local contagem = getPlayerStorageValue(cid, v.storage)
if (contagem == -1) then contagem = 1 end
str = str..k.." = ".. (not tonumber(contagem) and "["..contagem.."]" or "["..((contagem)-1).."/"..v.count.."]") .."\n"
end
str = str .. ""
return doShowTextDialog(cid, 8983, str)
]]></talkaction>
<event type="kill" name="KillTask" event="script"><![CDATA[
domodlib('task_func')
function onKill(cid, target, lastHit)
if(isMonster(target) == true) then
local n = string.lower(getCreatureName(target))
for race, mob in pairs(tasktabble) do
if getPlayerStorageValue(cid,mob .storage_start) >= 1 then
for i = 1,#mob.monster_race do
if n == mob.monster_race[i] then
local contagem = getPlayerStorageValue(cid, mob.storage)
if (contagem == -1) then contagem = 1 end
if not tonumber(contagem) then return true end
if contagem > mob.count then return true end
if contagem > mob.count then return true end
setPlayerStorageValue(cid, mob.storage, contagem+1)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE,""..(contagem == mob.count and "Parabens! Voce terminou a tarefa de "..race.."." or "Criaturas Derrotadas: [" .. contagem .. "/" .. mob.count .. "] " .. race .. ".").."")
end
end
end
end
end
return true
end]]></event>
</mod>
Olá, gostaria de saber se alguém pode me ajudar com uma coisinha, esse script foi feito pelo @Vodkart
Gostaria de saber se teria como colocar para fazer as tasks somente 3x e nunca mais fazelas.
Exemplo fez a de RATO, vc pode pegar ela mais 2x pra fazer, ai acabando não da mais pra fazer ela.
Queria por isso em todas ai em cima.
Se alguém souber fazer da uma luz para o pai pfv!