• 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!

MoveEvent Slot system - Multi slot (No crashes)

Could you answer my question too ?
Pode me responder a minha pergunta tambem ?
¿Podría responder a mi pregunta también?

Maybe yes now, talvez sim agora, tal vez lo hace ahora

3 Idiomas pra voce .
 
....
Code:
             elseif sl == 'cas' then
                        doAddCondition(cid,conditionCLUB[tonumber(n)])
                        ca[53] = 1

better now?
 
Cool, but shouldnt it be called something different?

I saw "Slots" system and was like ".. wtf?"

First I thought of EQ slots, then of it being like a backpack, then of game slots. I had to watch the video to realize you were actually enchanting items with Augmentations*.


*To make (something already developed or well under way) greater, as in size, extent, or quantity
 
Could you make it easier to edit?
Like, making it available only to socket one specefic item.
Just making it abit easier to understand for a beginner.
Other then that, it looks really awesome!

Thanks
 
@squidy
if you use aid yes.
@vincity
better no
@Nanashi
sorry if i change it to eaiser it will affect the script work
 
could you pls just tell me com take of the % of name without make error in script :B?
 
Very good..
I need..
Help, remove all slots of the item with maximum of slots.
I use this more not work
setItemName(item.uid,getItemInfo(item.itemid).name )

ex:
Lua:
        if getSlotCount(nam) < conf.maxSlotCount then
                local l = choose('hp','mp','ml','cas','shield','dist')
                local p = getper()

                doSendMagicEffect(toPosition,30)
                nam = nam..' ['..l..'.+'..p..'%]'
                doSendAnimatedText(toPosition,l..' '..p..'%',120)
                doItemSetAttribute(itemEx.uid,'name',nam)
                doRemoveItem(item.uid,1)
        else
                doPlayerSendTextMessage(cid, 24,"Remove all slots.")
                setItemName(item.uid,getItemInfo(item.itemid).name )
        end
        return true
end

????
 
Nice Script rep++
but cant i put this in my console off? ;S
i everytime get this if someone puts the slotted item on
Code:
[22/07/2010 14:25:59] ml
[22/07/2010 14:25:59] 13
 
well, because I still dont understand this I'll just edit source and use item attributes instead of conditions xD
 
i need reset with this condition:

setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level))

because i hare other system example:
02:59 You see a demon shield +3 [mp.+1%] [cas.+2%] (Def:41).

i only need reset slot and not this +3
i have this:
setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level))
BUT NEED MORE CONFIGS :(
no good
Lua:
--[[
Slot system 100% by mock \o
]]
---Config
local conf = {
maxSlotCount=1,
ignoredIds={}
}
--End
function choose(...) --- Function by mock.
        local arg = {...}
        return arg[math.random(1,#arg)]
end
if not getItemAttack then
        function getItemAttack(uid)
                return getItemAttribute(uid,'attack')
        end
        function getItemDefense(uid)
                return getItemAttribute(uid,'defense')
        end
end
local function isArmor(uid) -- Function by Mock the bear.
    if (getItemInfo(uid.itemid).armor ~= 0) and (getItemWeaponType(uid.uid) == 0) then
                return true
        end
        return false
end
local function isWeapon(uid) -- Function by Mock the bear.
        uid = uid or 0
        local f = getItemWeaponType(uid)
        if f == 1 or f == 2 or f == 3 then
                return true
        end
        return false
end
local function isShield(uid) -- Function by Mock the bear.
        uid = uid or 0
        if getItemWeaponType(uid) == 4 then
                return true
        end
        return false
end
local function isBow(uid) -- Function by Mock the bear.
        uid = uid or 0
        if getItemWeaponType(uid) == 5 and not isItemStackable(uid) then
                return true
        end
        return false
end
function onUse(cid, item, fromPosition, itemEx, toPosition) -- Script by mock the bear (MTB)
        if item.uid == 0 or item.itemid == 0 then return false end
        toPosition.stackpos = 255
        if item.uid == 0 or item.itemid == 0 then return false end
        toPosition.stackpos = 255
    if isInArray(conf.ignoredIds, itemEx.itemid)
        or (not getItemWeaponType(itemEx.uid) or getItemWeaponType(itemEx.uid) > 5)
        or (getItemWeaponType(itemEx.uid) == 0 and not isArmor(itemEx))
        or itemEx.itemid == 0 or itemEx.type > 1 or isItemStackable(itemEx.uid) then
        doPlayerSendTextMessage(cid, 24,"You not reset this item.")
        return TRUE
    end
    if isCreature(itemEx.uid) then
        return FALSE
    end
        local nam = getItemName(itemEx.uid)
        function getper()
                local n = 1
                for i=1,10 do
                        n = n+math.random(0,2)
                        if n < 8*i then
                                break
                        end
                end
                return n
        end
        function getSlotCount(nam)
                local c = 0
                for _ in nam:gmatch('%[(.-)%]') do
                        c = c+1
                end
                return c
        end
        if getSlotCount(nam) >= conf.maxSlotCount and getWeaponLevel(itemEx.uid) <= 3 then
                doPlayerAddItem(cid,8300,1)
                doSendMagicEffect(toPosition,30)
                doCreatureSay(cid, "~Reset Slots!", TALKTYPE_ORANGE_1)
                setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level))
                
        else
                doPlayerSendTextMessage(cid, 24,"You not need reset.")
        end
        return true
end
:blink:
 
Last edited:
I have this but not very good Help


Lua:
--[[
Slot system 100% by mock \o
]]
---Config
local conf = {
maxSlotCount=1,
noUPIds={2488,8881,8931,7450,8925,2522,2523,6433,6391,2537,2542},
maxlvl = 2,
ignoredIds={}
}
--End
function choose(...) --- Function by mock.
        local arg = {...}
        return arg[math.random(1,#arg)]
end
if not getItemAttack then
        function getItemAttack(uid)
                return getItemAttribute(uid,'attack')
        end
        function getItemDefense(uid)
                return getItemAttribute(uid,'defense')
        end
end
local function isArmor(uid) -- Function by Mock the bear.
    if (getItemInfo(uid.itemid).armor ~= 0) and (getItemWeaponType(uid.uid) == 0) then
                return true
        end
        return false
end
local function isWeapon(uid) -- Function by Mock the bear.
        uid = uid or 0
        local f = getItemWeaponType(uid)
        if f == 1 or f == 2 or f == 3 then
                return true
        end
        return false
end
local function isShield(uid) -- Function by Mock the bear.
        uid = uid or 0
        if getItemWeaponType(uid) == 4 then
                return true
        end
        return false
end
local function isBow(uid) -- Function by Mock the bear.
        uid = uid or 0
        if getItemWeaponType(uid) == 5 and not isItemStackable(uid) then
                return true
        end
        return false
end
function onUse(cid, item, fromPosition, itemEx, toPosition) -- Script by mock the bear (MTB)
        if item.uid == 0 or item.itemid == 0 then return false end
        toPosition.stackpos = 255
        if item.uid == 0 or item.itemid == 0 then return false end
        toPosition.stackpos = 255
    if isInArray(conf.ignoredIds, itemEx.itemid)
        or (not getItemWeaponType(itemEx.uid) or getItemWeaponType(itemEx.uid) > 5)
        or (getItemWeaponType(itemEx.uid) == 0 and not isArmor(itemEx))
        or itemEx.itemid == 0 or itemEx.type > 1 or isItemStackable(itemEx.uid) then
        doPlayerSendTextMessage(cid, 24,"You not reset this item.")
        return TRUE
    end
    if isCreature(itemEx.uid) then
        return FALSE
    end
        local nam = getItemName(itemEx.uid)
        function getper()
                local n = 1
                for i=1,10 do
                        n = n+math.random(0,2)
                        if n < 8*i then
                                break
                        end
                end
                return n
        end
        function getSlotCount(nam)
                local c = 0
                for _ in nam:gmatch('%[(.-)%]') do
                        c = c+1
                end
                return c
        end

        if isInArray(conf.noUPIds, itemEx.itemid) and getSlotCount(nam) >= conf.maxSlotCount then
level = getWeaponLevel(itemEx.uid)
resets = getSlotCount(nam)

                doPlayerAddItem(cid,8300,1)
                doSendMagicEffect(toPosition,30)
                doCreatureSay(cid, "~Reset Slots! +0", TALKTYPE_ORANGE_1)
                setItemName(itemEx.uid, getItemNameById(itemEx.itemid))
        return true

        elseif getSlotCount(nam) >= conf.maxSlotCount and getWeaponLevel(itemEx.uid)+1 <= 2 then
level = getWeaponLevel(itemEx.uid)
resets = getSlotCount(nam)

                doPlayerAddItem(cid,8300,1)
                doSendMagicEffect(toPosition,30)
                doCreatureSay(cid, "~~You have +1 upgrade and Reset all Slots!~~", TALKTYPE_ORANGE_1)
                setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level))
        return true

        elseif getSlotCount(nam) >= conf.maxSlotCount and getWeaponLevel(itemEx.uid)+1 <= 3 then
level = getWeaponLevel(itemEx.uid)
resets = getSlotCount(nam)

                doPlayerAddItem(cid,8300,1)
                doSendMagicEffect(toPosition,30)
                doCreatureSay(cid, "~~You have +2 upgrades and Reset all Slots!~~", TALKTYPE_ORANGE_1)
                setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level))
        return true

        elseif getSlotCount(nam) >= conf.maxSlotCount and getWeaponLevel(itemEx.uid)+1 == 4 then
level = getWeaponLevel(itemEx.uid)
slots = getSlotCount(nam)
                doSendMagicEffect(toPosition,30)
                doCreatureSay(cid, "~Reset Slots! You lose " .. slots .. " viper slot system because you have +3 upgrades~~", TALKTYPE_ORANGE_1)
                setItemName(itemEx.uid, getItemNameById(itemEx.itemid)..' +'..(level))
        else
                doPlayerSendTextMessage(cid, 24,"You not need reset.")
        end
        return true
end
:blink:
 
Last edited:
Back
Top