Heya mates, somehow my reward script aint working.
I've added the everything in creaturescripts and also in login, i don't get any errors in console... Abit weird isn't?
Script
Login.lua
Thanks in advance!
I've added the everything in creaturescripts and also in login, i don't get any errors in console... Abit weird isn't?
XML:
<event type="advance" name="reward" event="script" value="reward45.lua"/>
Script
Lua:
local prizes = {
[60000] = {level = 15, reward = {2160, 1}},
[60001] = {level = 20, reward = {2160, 2}},
[60002] = {level = 35, reward = {{2160, 4},
[60003] = {level = 50, reward = {{7589, 50},
[60004] = {level = 75, reward = {{2160, 5},
[60005] = {level = 80, reward = {{7590, 50},
[60006] = {level = 100, reward = {{2160, 6},
[60006] = {level = 120, reward = {{2160, 8},
}
function onAdvance(cid, skill, oldlevel, newlevel)
if(skill ~= SKILL__LEVEL)then return TRUE end
for i,t in ipairs(prizes) do
if not(getPlayerStorageValue(cid, i)) and t.level <= newlevel then
if type(t.reward[1] ~= "table") then
local add = doPlayerAddItem(cid, t.reward[1], t.reward[2])
if add then
doPlayerSendTextMessage(cid, 19, "You have received ".t.reward[2]." ".getItemNameById(t.reward[2])." due to reaching level ".t.level.".")
setPlayerStorageValue(cid, i, true)
end
else
local bp = doCreateItemEx(1988, 1)
for _,item in ipairs(t.reward) do
doAddContainerItem(bp, item[1], item[2])
end
local add = doPlayerAddItemEx(cid, bp)
if add then
doPlayerSendTextMessage(cid, 19, "You have received backpack with items due to reaching level ".t.level.".")
setPlayerStorageValue(cid, i, true)
end
end
end
end
return TRUE
end
Login.lua
Lua:
local config = {
useFragHandler = getBooleanFromString(getConfigValue('useFragHandler'))
}
function onLogin(cid)
local useFragHandler = getBooleanFromString(getConfigValue('useFragHandler'))
local loss = getConfigValue('deathLostPercent')
if(loss ~= nil) then
doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, loss * 10)
end
local lastLogin = getPlayerLastLoginSaved(cid)
if(lastLogin > 0) then
text = "Welcome!\n Visit our webpage for a complete information about the server.\n//Server Staff"
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, text)
else
doPlayerSendOutfitWindow(cid)
end
if getPlayerStorageValue(cid, 11551) == 0 then
setPlayerPromotionLevel(cid, 0)
end
if(not isPlayerGhost(cid)) then
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
end
registerCreatureEvent(cid, "advance")
registerCreatureEvent(cid, "Aol")
registerCreatureEvent(cid, "Mail")
registerCreatureEvent(cid, "GuildMotd")
registerCreatureEvent(cid, "Idle")
registerCreatureEvent(cid, "SkullCheck")
registerCreatureEvent(cid, "ReportBug")
registerCreatureEvent(cid, "levelUp")
registerCreatureEvent(cid, "onPrepareDeath")
registerCreatureEvent(cid, "FirstItems")
registerCreatureEvent(cid, "Arena")
registerCreatureEvent(cid, "reward")
registerCreatureEvent(cid, "mensaje")
registerCreatureEvent(cid, "ArenaKill")
registerCreatureEvent(cid, "demonOakLogout")
registerCreatureEvent(cid, "demonOakDeath")
registerCreatureEvent(cid, "tormentorportal")
registerCreatureEvent(cid, "questLook")
registerCreatureEvent(cid, "forever amulet")
registerCreatureEvent(cid, "charge amulet")
if(config.useFragHandler) then
registerCreatureEvent(cid, "SkullCheck")
end
-- if he did not make full arena 1 he must start from zero
if getPlayerStorageValue(cid, 42309) < 1 then
for i = 42300, 42309 do
setPlayerStorageValue(cid, i, 0)
end
end
-- if he did not make full arena 2 he must start from zero
if getPlayerStorageValue(cid, 42319) < 1 then
for i = 42310, 42319 do
setPlayerStorageValue(cid, i, 0)
end
end
-- if he did not make full arena 3 he must start from zero
if getPlayerStorageValue(cid, 42329) < 1 then
for i = 42320, 42329 do
setPlayerStorageValue(cid, i, 0)
end
end
if getPlayerStorageValue(cid, 42355) == -1 then
setPlayerStorageValue(cid, 42355, 0) -- did not arena level
setPlayerStorageValue(cid, 42350, 0) -- time to kick 0
setPlayerStorageValue(cid, 42352, 0) -- is not in arena
end
return true
end
Thanks in advance!
Last edited by a moderator: