local tiers = {
[1] = {starting_item = 11111, ending_item = 22222, downgrade_item = 0, fail_chance = 20, break_chance = 5},
[2] = {starting_item = 22222, ending_item = 33333, downgrade_item = 11111, fail_chance = 25, break_chance = 5},
[3] = {starting_item = 33333, ending_item = 44444, downgrade_item = 22222, fail_chance = 30, break_chance = 6},
[4] = {starting_item = 44444, ending_item = 55555, downgrade_item = 33333, fail_chance = 40, break_chance = 7},
[5] = {starting_item = 55555, ending_item = 66666, downgrade_item = 44444, fail_chance = 55, break_chance = 8},
[6] = {starting_item = 66666, ending_item = 77777, downgrade_item = 55555, fail_chance = 75, break_chance = 9},
[7] = {starting_item = 77777, ending_item = 88888, downgrade_item = 66666, fail_chance = 95, break_chance = 10}
}
function onUse(cid, item, fromPosition, itemEx, toPosition)
for i = 1, #tiers do
if itemEx.itemid == tiers[i].starting_item then
doRemoveItem(item.uid, 1)
local rand = math.random(100)
print("Random number chosen is: " .. rand .. "")
if rand <= tiers[i].break_chance then
doRemoveItem(itemEx.uid)
doCreatureSay(cid, "Failed! Broken!", TALKTYPE_ORANGE_1)
return true
elseif rand <= tiers[i].fail_chance then
if tiers[i].downgrade_item ~= 0 then
doTransformItem(itemEx.uid, tiers[i].downgrade_item)
doCreatureSay(cid, "Failed! Downgraded!", TALKTYPE_ORANGE_1)
return true
else
-- doRemoveItem(itemEx.uid)
doCreatureSay(cid, "Failed!", TALKTYPE_ORANGE_1)
return true
end
end
doTransformItem(itemEx.uid, tiers[i].ending_item)
doCreatureSay(cid, "TRANSFORM", TALKTYPE_ORANGE_1)
doSendMagicEffect(getThingPosition(itemEx.uid), CONST_ME_FIREWORK_RED)
end
end
return true
end