• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!
  • 2026 staff recruitment is open! Check it out and consider applying!

Solved Edit script [creatureevents]

Mr Zool

New Member
Joined
Jul 5, 2012
Messages
216
Reaction score
2
I working on "War Ots" i need help with script :

I want to players get reward on that levels :
110lv - Stone Skin amulet [5charges]
130lv - Stone Skin amulet [5charges]
150lv - Stone Skin amulet [10charges]
200lv - Stone Skin amulet [10charges]
250lv - Stone Skin amulet [15charges]
300lv - Stone skin amulet [15charges]
350lv - Stone Skin amulet [15charges]
400lv - Stone Skin amulet [20charges]
450lv - Stone Skin amulet [20charges]
500lv - Stone Skin amulet [35charges]


My reward script :
//I want every vocation get same reward.
Code:
local text = "You have been rewared 10cc and item your progress!" --Text when he gets level 42



function onAdvance(cid, skill, oldLevel, newLevel)

queststatus = getPlayerStorageValue(cid,44569)

if getPlayerLevel(cid) > 42 and queststatus == -1 then

        if isDruid(cid) == TRUE then

        doPlayerAddItem(cid,2160,10)

        doPlayerAddItem(cid,8910,1)

        doPlayerSendTextMessage(cid,22,text)

        setPlayerStorageValue(cid, 44569, 1)

        doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FIREWORK_YELLOW)

        elseif isKnight(cid) == TRUE then

        doPlayerAddItem(cid,2432,1)

        doPlayerAddItem(cid,2436,1)

        doPlayerAddItem(cid,2407,1)

        doPlayerAddItem(cid,2160,10)

        setPlayerStorageValue(cid, 44569, 1)

        doPlayerSendTextMessage(cid,22,text)

        doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FIREWORK_YELLOW)

        elseif isPaladin(cid) == TRUE then

        doPlayerAddItem(cid,2547,1)

        doPlayerAddItem(cid,2160,10)

        setPlayerStorageValue(cid, 44569, 1)

        doPlayerSendTextMessage(cid,22,text)

        doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FIREWORK_YELLOW)

        elseif isSorcerer(cid) == TRUE then

        doPlayerAddItem(cid,2160,10)

        doPlayerAddItem(cid,8922,1)

        setPlayerStorageValue(cid, 44569, 1)

        doPlayerSendTextMessage(cid,22,text)

        doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FIREWORK_YELLOW)

        end

end

return TRUE

end
 
I use the following script, it is set up for cc's but you can change it to whatever itemid you want.

The following code is in \data\creaturescripts\scripts\reward.lua
Code:
function onAdvance(cid, skill, oldlevel, newlevel)
-- Storage id's 60360 -60369 are not in use and can be used here
    local First = 40 -- First level for reward
    local Second = 45    -- Second etc
    local Third = 50
    local Fourth = 55
    local Fifth = 60
   
    local FirstAmount = 1    -- Amount of cc to get on first level
    local SecondAmount = 2    -- second reward etc
    local ThirdAmount = 3
    local FourthAmount = 4
    local FifthAmount = 5
   
        if(getPlayerStorageValue(cid, 60360) ~= 1 and skill == SKILL__LEVEL and newlevel >= First) then
            doPlayerAddItem(cid, 2160, FirstAmount)
            setPlayerStorageValue(cid, 60360, 1)
            doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FIREWORK_RED)
            local message = "You have received "..FirstAmount.." crystal coins due to reaching level "..First.."!"
            doCreatureSay(cid, message, TALKTYPE_ORANGE_1)
            doPlayerSendTextMessage(cid, 19, "You have received "..FirstAmount.." crystal coins due to reaching level "..First.."!")
        end
       
        if(getPlayerStorageValue(cid, 60361) ~= 1 and skill == SKILL__LEVEL and newlevel >= Second) then
            doPlayerAddItem(cid, 2160, SecondAmount)
            setPlayerStorageValue(cid, 60361, 1)
            doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FIREWORK_RED)
            local message = "You have received "..SecondAmount.." crystal coins due to reaching level "..Second.."!"
            doCreatureSay(cid, message, TALKTYPE_ORANGE_1)
            doPlayerSendTextMessage(cid, 19, "You have received "..SecondAmount.." crystal coins due to reaching level "..Second.."!")
        end
       
        if(getPlayerStorageValue(cid, 60362) ~= 1 and skill == SKILL__LEVEL and newlevel >= Third) then
            doPlayerAddItem(cid, 2160, ThirdAmount)
            setPlayerStorageValue(cid, 60362, 1)
            doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FIREWORK_RED)
            local message = "You have received "..ThirdAmount.." crystal coins due to reaching level "..Third.."!"
            doCreatureSay(cid, message, TALKTYPE_ORANGE_1)
            doPlayerSendTextMessage(cid, 19, "You have received "..ThirdAmount.." crystal coins due to reaching level "..Third.."!")
        end               

        if(getPlayerStorageValue(cid, 60363) ~= 1 and skill == SKILL__LEVEL and newlevel >= Fourth) then
            doPlayerAddItem(cid, 2160, FourthAmount)
            setPlayerStorageValue(cid, 60363, 1)
            doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FIREWORK_RED)
            local message = "You have received "..FourthAmount.." crystal coins due to reaching level "..Fourth.."!"
            doCreatureSay(cid, message, TALKTYPE_ORANGE_1)
            doPlayerSendTextMessage(cid, 19, "You have received "..FourthAmount.." crystal coins due to reaching level "..Fourth.."!")
        end               
               
        if(getPlayerStorageValue(cid, 60364) ~= 1 and skill == SKILL__LEVEL and newlevel >= Fifth) then
            doPlayerAddItem(cid, 2160, FifthAmount)
            setPlayerStorageValue(cid, 60364, 1)
            doSendMagicEffect(getPlayerPosition(cid), CONST_ME_FIREWORK_RED)
            local message = "You have received "..FifthAmount.." crystal coins due to reaching level "..Fifth.."!"
            doCreatureSay(cid, message, TALKTYPE_ORANGE_1)
            doPlayerSendTextMessage(cid, 19, "You have received "..FifthAmount.." crystal coins due to reaching level "..Fifth.."!")
        end           
        return TRUE
end

And add it to creaturescripts.xml:
Code:
    <event type="advance"         name="reward"         event="script" value="reward.lua"/>            <!-- Level reward -->

Change the ids and add more of the same to get what you need ;)
 
Back
Top