D
Deleted member 49793
Guest
Basicly when it comes to the task The Plagued One's (The Plagued One ingame) it doesnt give them kills when they kill this monster, anyone know why? I made a boost on the quest storage etc. due to thinking that would fix it but did nothing.
Code:
local questCreatures =
{
["plagued rat"] = {questStarted = 1510, questStorage = 65000, creatureStorage = 15000, killsRequired = 10, raceName = "Plagued Rats"},
["zombie"] = {questStarted = 1511, questStorage = 65001, creatureStorage = 15007, killsRequired = 50, raceName = "Zombies"},
["plagued bat"] = {questStarted = 1512, questStorage = 65002, creatureStorage = 15011, killsRequired = 100, raceName = "Mutateds"},
["vampire"] = {questStarted = 1513, questStorage = 65003, creatureStorage = 15013, killsRequired = 50, raceName = "Vampires"},
["vampire bride"] = {questStarted = 1514, questStorage = 65004, creatureStorage = 15016, killsRequired = 5, raceName = "Vampire Brides"},
["fire conjurer"] = {questStarted = 1515, questStorage = 65005, creatureStorage = 15017, killsRequired = 50, raceName = "Fire Conjurers"},
["slave torturer"] = {questStarted = 1516, questStorage = 65006, creatureStorage = 15018, killsRequired = 50, raceName = "Slave Torturers"},
["werewolf"] = {questStarted = 1517, questStorage = 65007, creatureStorage = 16019, killsRequired = 175, raceName = "Werewolfs"},
["nightmare"] = {questStarted = 1518, questStorage = 65008, creatureStorage = 16020, killsRequired = 150, raceName = "Nightmares"},
["The Plagued One"] = {questStarted = 1519, questStorage = 65809, creatureStorage = 16821, killsRequired = 20, raceName = "The Plagued Ones"},
["Blight Walker"] = {questStarted = 1520, questStorage = 65810, creatureStorage = 15822, killsRequired = 150, raceName = "Blight Walkers"},
["The Forsaken One"] = {questStarted = 1521, questStorage = 65811, creatureStorage = 15823, killsRequired = 20, raceName = "The Forsaken Ones"},
["Grim Reaper"] = {questStarted = 1522, questStorage = 65812, creatureStorage = 15824, killsRequired = 150, raceName = "Grim reapers"}, ["The Forsaken One"] = {questStarted = 1521, questStorage = 65011, creatureStorage = 15023, killsRequired = 150, raceName = "Grim Reapers"},
["quara mantassin scout"] = {questStarted = 1523, questStorage = 65013, creatureStorage = 15025, killsRequired = 300, raceName = "Quaras Scout"},
["quara pincher scout"] = {questStarted = 1524, questStorage = 65014, creatureStorage = 15026, killsRequired = 300, raceName = "Quaras Scout"},
["quara pincher"] = {questStarted = 1521, questStorage = 65015, creatureStorage = 15031, killsRequired = 300, raceName = "Quaras"},
["massive water elemental"] = {questStarted = 1522, questStorage = 65016, creatureStorage = 15035, killsRequired = 70, raceName = "Water Elementals"},
["muddy earth elemental"] = {questStarted = 1523, questStorage = 65017, creatureStorage = 15039, killsRequired = 70, raceName = "Earth Elementals"},
["overcharged energy elemental"] = {questStarted = 1524, questStorage = 65018, creatureStorage = 15043, killsRequired = 70, raceName = "Energy Elementals"},
["massive fire elemental"] = {questStarted = 1525, questStorage = 65019, creatureStorage = 15047, killsRequired = 70, raceName = "Fire Elementals"},
["mutated rat"] = {questStarted = 1526, questStorage = 65016, creatureStorage = 15048, killsRequired = 200, raceName = "Mutated Rats"},
["giant spider"] = {questStarted = 1527, questStorage = 65017, creatureStorage = 15049, killsRequired = 500, raceName = "Giant Spiders"},
["hydra"] = {questStarted = 1528, questStorage = 65018, creatureStorage = 15050, killsRequired = 2000, raceName = "Hydras"},
["sea serpent"] = {questStarted = 1529, questStorage = 65019, creatureStorage = 15051, killsRequired = 2000, raceName = "Sea Serpents"},
["behemoth"] = {questStarted = 1530, questStorage = 65020, creatureStorage = 15052, killsRequired = 2000, raceName = "Behemoths"},
["serpent spawn"] = {questStarted = 1531, questStorage = 65021, creatureStorage = 15053, killsRequired = 1500, raceName = "Serpents Spawn"},
["green djinn"] = {questStarted = 1532, questStorage = 65022, creatureStorage = 15054, killsRequired = 500, raceName = "Green Djinns"},
["efreet"] = {questStarted = 1532, questStorage = 65022, creatureStorage = 15055, killsRequired = 500, raceName = "Green Djinns"},
["blue djinn"] = {questStarted = 1533, questStorage = 65023, creatureStorage = 15056, killsRequired = 500, raceName = "Blue Djinns"},
["marid"] = {questStarted = 1533, questStorage = 65023, creatureStorage = 15057, killsRequired = 500, raceName = "Blue Djinns"},
["pirate buccaneer"] = {questStarted = 1534, questStorage = 65024, creatureStorage = 15058, killsRequired = 3000, raceName = "Pirates"},
["pirate corsair"] = {questStarted = 1534, questStorage = 65024, creatureStorage = 15059, killsRequired = 3000, raceName = "Pirates"},
["pirate cutthroat"] = {questStarted = 1534, questStorage = 65024, creatureStorage = 15060, killsRequired = 3000, raceName = "Pirates"},
["pirate ghost"] = {questStarted = 1534, questStorage = 65024, creatureStorage = 15061, killsRequired = 3000, raceName = "Pirates"},
["pirate marauder"] = {questStarted = 1534, questStorage = 65024, creatureStorage = 15062, killsRequired = 3000, raceName = "Pirates"},
["pirate skeleton"] = {questStarted = 1534, questStorage = 65024, creatureStorage = 15063, killsRequired = 3000, raceName = "Pirates"},
["pirate buccaneer"] = {questStarted = 1535, questStorage = 65025, creatureStorage = 15064, killsRequired = 3000, raceName = "Pirates"},
["pirate corsair"] = {questStarted = 1535, questStorage = 65025, creatureStorage = 15065, killsRequired = 3000, raceName = "Pirates"},
["pirate cutthroat"] = {questStarted = 1535, questStorage = 65025, creatureStorage = 15066, killsRequired = 3000, raceName = "Pirates"},
["pirate ghost"] = {questStarted = 1535, questStorage = 65025, creatureStorage = 15067, killsRequired = 3000, raceName = "Pirates"},
["pirate marauder"] = {questStarted = 1535, questStorage = 65025, creatureStorage = 15068, killsRequired = 3000, raceName = "Pirates"},
["pirate skeleton"] = {questStarted = 1535, questStorage = 65025, creatureStorage = 15069, killsRequired = 3000, raceName = "Pirates"},
["minotaur"] = {questStarted = 1536, questStorage = 65026, creatureStorage = 15070, killsRequired = 5000, raceName = "Minotaurs"},
["necromancer"] = {questStarted = 1537, questStorage = 65027, creatureStorage = 15071, killsRequired = 4000, raceName = "Magicians"},
["priestess"] = {questStarted = 1537, questStorage = 65027, creatureStorage = 15072, killsRequired = 4000, raceName = "Magicians"},
["necromancer"] = {questStarted = 1538, questStorage = 65028, creatureStorage = 15073, killsRequired = 1000, raceName = "Magicians"},
["priestess"] = {questStarted = 1538, questStorage = 65028, creatureStorage = 15074, killsRequired = 1000, raceName = "Magicians"},
["demon"] = {questStarted = 1539, questStorage = 65029, creatureStorage = 15075, killsRequired = 6666, raceName = "Demons"}
}
local msgType = MESSAGE_STATUS_CONSOLE_ORANGE
function onKill(cid, target, lastHit)
local creature = questCreatures[getCreatureName(target):lower()]
if creature then
if isPlayer(target) then
return true
end
if getCreatureStorage(cid, creature.questStarted) > 0 then
if getCreatureStorage(cid, creature.questStorage) < creature.killsRequired then
if getCreatureStorage(cid, creature.questStorage) < 0 then
doCreatureSetStorage(cid, creature.questStorage, 0)
end
if getCreatureStorage(cid, creature.creatureStorage) < 0 then
doCreatureSetStorage(cid, creature.creatureStorage, 0)
end
doCreatureSetStorage(cid, creature.questStorage, getCreatureStorage(cid, creature.questStorage) + 1)
doCreatureSetStorage(cid, creature.creatureStorage, getCreatureStorage(cid, creature.creatureStorage) + 1)
doPlayerSendTextMessage(cid, msgType, "" .. getCreatureStorage(cid, creature.creatureStorage) .. " " .. getCreatureName(target) .. " defeated. Total [" .. getCreatureStorage(cid, creature.questStorage) .. "/" .. creature.killsRequired .. "] " .. creature.raceName .. ".")
end
end
end
return true
end
Code:
local tasks =
{
[1] = {questStarted = 1510, questStorage = 65000, killsRequired = 10, raceName = "Plagued Rats", rewards = {{enable = true, type = "exp", values = 20000}, {enable = true, type = "money", values = 1000}}},
[2] = {questStarted = 1511, questStorage = 65001, killsRequired = 50, raceName = "Zombies", rewards = {{enable = true, type = "exp", values = 40000}, {enable = true, type = "money", values = 2000}}},
[3] = {questStarted = 1512, questStorage = 65002, killsRequired = 100, raceName = "Plagued Bats", rewards = {{enable = true, type = "exp", values = 50000}, {enable = true, type = "money", values = 3000}}},
[4] = {questStarted = 1513, questStorage = 65003, killsRequired = 50, raceName = "Vampires", rewards = {{enable = true, type = "exp", values = 70000}, {enable = true, type = "money", values = 5000}}},
[5] = {questStarted = 1514, questStorage = 65004, killsRequired = 5, raceName = "Vampire Brides", rewards = {{enable = true, type = "exp", values = 90000}, {enable = true, type = "money", values = 5000}}},
[6] = {questStarted = 1515, questStorage = 65005, killsRequired = 50, raceName = "Fire Conjurers", rewards = {{enable = true, type = "exp", values = 120000}, {enable = true, type = "money", values = 20000}}},
[7] = {questStarted = 1516, questStorage = 65006, killsRequired = 50, raceName = "Slave Torturers", rewards = {{enable = true, type = "exp", values = 150000}, {enable = true, type = "money", values = 20000}}},
[8] = {questStarted = 1517, questStorage = 65007, killsRequired = 175, raceName = "Werewolves", rewards = {{enable = true, type = "exp", values = 150000}, {enable = true, type = "money", values = 25000}}},
[9] = {questStarted = 1518, questStorage = 65008, killsRequired = 150, raceName = "Nightmares", rewards = {{enable = true, type = "exp", values = 200000}, {enable = true, type = "money", values = 30000}}},
[10] = {questStarted = 1519, questStorage = 65809, killsRequired = 20, raceName = "The Plagued Ones", rewards = {{enable = true, type = "exp", values = 200000}, {enable = true, type = "money", values = 30000}}},
[11] = {questStarted = 1520, questStorage = 65810, killsRequired = 150, raceName = "Blight Walkers", rewards = {{enable = true, type = "exp", values = 300000}, {enable = true, type = "money", values = 30000}}},
[12] = {questStarted = 1521, questStorage = 65811, killsRequired = 20, raceName = "The Forsaken Ones", rewards = {{enable = true, type = "exp", values = 300000}, {enable = true, type = "money", values = 30000}}},
[13] = {questStarted = 1522, questStorage = 65812, killsRequired = 100, raceName = "Grim Reapers", rewards = {{enable = true, type = "exp", values = 400000}, {enable = true, type = "money", values = 30000}}},
[14] = {questStarted = 1523, questStorage = 65013, killsRequired = 20, raceName = "The Forsaken Ones", rewards = {{enable = true, type = "exp", values = 300000}, {enable = true, type = "money", values = 30000}}},
[15] = {questStarted = 1524, questStorage = 65014, killsRequired = 20, raceName = "The Forsaken Ones", rewards = {{enable = true, type = "exp", values = 300000}, {enable = true, type = "money", values = 30000}}},
}
local rankStorage = 32150
local storage = 64521
local keywordHandler = KeywordHandler:new()
local npcHandler = NpcHandler:new(keywordHandler)
NpcSystem.parseParameters(npcHandler)
local talkState = {}
local voc = {}
function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end
function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end
function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end
function onThink() npcHandler:onThink() end
function creatureSayCallback(cid, type, msg)
local s = getCreatureStorage(cid, storage)
if(not npcHandler:isFocused(cid)) then
return false
end
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_PRIVATE and 0 or cid
if msgcontains(msg, "task") then
if(s < 1) then
doCreatureSetStorage(cid, storage, 1)
s = getCreatureStorage(cid, storage)
end
if(getCreatureStorage(cid, rankStorage) < 1) then
doCreatureSetStorage(cid, rankStorage, 0)
end
if tasks[s] then
if(getCreatureStorage(cid, tasks[s].questStarted) < 1) then
if(getCreatureStorage(cid, tasks[s].creatureStorage) < 0) then
doCreatureSetStorage(cid, tasks[s].creatureStorage, 0)
end
if(getCreatureStorage(cid, tasks[s].questStorage) < 0) then
doCreatureSetStorage(cid, tasks[s].questStorage, 0)
end
doCreatureSetStorage(cid, tasks[s].questStarted, 1)
selfSay("You have started the task number " .. getPlayerStorageValue(cid, storage) .. ", in this task you need to kill " .. tasks[s].killsRequired .. " " .. tasks[s].raceName .. ".", cid)
else
selfSay("You are currently making task about " .. tasks[s].raceName .. ".", cid)
end
else
print("[Warning - Error::Killing in the name of::Tasks config] Something is wrong.")
end
elseif msgcontains(msg, "report") then
if tasks[s] and tasks[s].questStarted > 0 then
if(getCreatureStorage(cid, tasks[s].creatureStorage) < 0) then
doCreatureSetStorage(cid, tasks[s].creatureStorage, 0)
end
if(getCreatureStorage(cid, tasks[s].questStorage) < 0) then
doCreatureSetStorage(cid, tasks[s].questStorage, 0)
end
if(getCreatureStorage(cid, tasks[s].questStorage) >= tasks[s].killsRequired) then
for i = 1, table.maxn(tasks[s].rewards) do
if(tasks[s].rewards[i].enable) then
if tasks[s].rewards[i].type == "boss" or tasks[s].rewards[i].type == 1 then
doTeleportThing(cid, tasks[s].rewards[i].values)
elseif tasks[s].rewards[i].type == "exp" or tasks[s].rewards[i].type == 2 then
doPlayerAddExperience(cid, tasks[s].rewards[i].values)
elseif tasks[s].rewards[i].type == "item" or tasks[s].rewards[i].type == 3 then
doPlayerAddItem(cid, tasks[s].rewards[i].values[1], tasks[s].rewards[i].values[2])
elseif tasks[s].rewards[i].type == "money" or tasks[s].rewards[i].type == 4 then
doPlayerAddMoney(cid, tasks[s].rewards[i].values)
elseif tasks[s].rewards[i].type == "storage" or tasks[s].rewards[i].type == 5 then
doCreatureSetStorage(cid, tasks[s].rewards[i].values[1], tasks[s].rewards[i].values[2])
elseif tasks[s].rewards[i].type == "points" or tasks[s].rewards[i].type == 6 then
doCreatureSetStorage(cid, rankStorage, getCreatureStorage(cid, rankStorage) + tasks[s].rewards[i].values)
else
print("[Warning - Error::Killing in the name of::Tasks config] Bad reward type: " .. tasks[s].rewards[i].type .. ", reward could not be loaded.")
end
end
end
local rank = getCreatureStorage(cid, rankStorage)
selfSay("Great!... you have finished the task number " .. s .. "" .. (rank > 4 and ", you are a " or "") .. "" .. (((rank > 4 and rank < 10) and ("Huntsman") or (rank > 9 and rank < 20) and ("Ranger") or (rank > 19 and rank < 30) and ("Big Game Hunter") or (rank > 29 and rank < 50) and ("Trophy Hunter") or (rank > 49) and ("Elite Hunter")) or "") .. ". Good job.", cid)
doCreatureSetStorage(cid, storage, s + 1)
else
selfSay("Current " .. getCreatureStorage(cid, tasks[s].questStorage) .. " " .. tasks[s].raceName .. " killed, you need to kill " .. tasks[s].killsRequired .. ".", cid)
end
else
selfSay("You do not have started any task.", cid)
end
end
return true
end
npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
npcHandler:addModule(FocusModule:new())