Deepling
Just a spammer
Hello, when I am using Slot System by Zbizu, players cannot log in to server. When player is trying to log in, it says "Deepling logged in", then error pops up and "Deepling logging out"
TFS 1.2 10.82 client version.
Error in console :
Could someone help me?
Thanks!
Code:
local conditionMP,conditionHP,conditionML,conditionCLUB,conditionSHI,conditionDIST,conditionAMP = {},{},{},{},{},{},{}
for i=1,300 do
conditionHP[i] = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(conditionHP[i], CONDITION_PARAM_SUBID, 50)
setConditionParam(conditionHP[i], CONDITION_PARAM_BUFF_SPELL, 1)
setConditionParam(conditionHP[i], CONDITION_PARAM_TICKS, -1)
setConditionParam(conditionHP[i], CONDITION_PARAM_STAT_MAXHITPOINTSPERCENT, 100+i)
conditionMP[i] = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(conditionMP[i], CONDITION_PARAM_SUBID, 51)
setConditionParam(conditionMP[i], CONDITION_PARAM_BUFF_SPELL, 1)
setConditionParam(conditionMP[i], CONDITION_PARAM_TICKS, -1)
setConditionParam(conditionMP[i], CONDITION_PARAM_STAT_MAXMANAPOINTSPERCENT, 100+i)
conditionML[i] = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(conditionML[i], CONDITION_PARAM_SUBID, 52)
setConditionParam(conditionML[i], CONDITION_PARAM_BUFF_SPELL, 1)
setConditionParam(conditionML[i], CONDITION_PARAM_TICKS, -1)
setConditionParam(conditionML[i], CONDITION_PARAM_STAT_MAGICPOINTSPERCENT, 100+i)
conditionCLUB[i] = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(conditionCLUB[i], CONDITION_PARAM_SUBID, 53)
setConditionParam(conditionCLUB[i], CONDITION_PARAM_BUFF_SPELL, 1)
setConditionParam(conditionCLUB[i], CONDITION_PARAM_TICKS, -1)
setConditionParam(conditionCLUB[i], CONDITION_PARAM_SKILL_MELEEPERCENT, 100+i)
conditionSHI[i] = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(conditionSHI[i], CONDITION_PARAM_SUBID, 54)
setConditionParam(conditionSHI[i], CONDITION_PARAM_BUFF_SPELL, 1)
setConditionParam(conditionSHI[i], CONDITION_PARAM_TICKS, -1)
setConditionParam(conditionSHI[i], CONDITION_PARAM_SKILL_SHIELDPERCENT, 100+i)
conditionDIST[i] = createConditionObject(CONDITION_ATTRIBUTES)
setConditionParam(conditionDIST[i], CONDITION_PARAM_SUBID, 55)
setConditionParam(conditionDIST[i], CONDITION_PARAM_BUFF_SPELL, 1)
setConditionParam(conditionDIST[i], CONDITION_PARAM_TICKS, -1)
setConditionParam(conditionDIST[i], CONDITION_PARAM_SKILL_DISTANCEPERCENT, 100+i)
end
function getSlotType(n)
if not n then
return false
end
if n:match('%[(.+)%]') then
n = n:match('%[(.+)%]')
if n == '?' then
return 0,n
else
return n:match('(.-)%.([+-])(%d+)%%')
end
else
return false
end
end
local function loadSet(cid)
local player = Player(cid)
if not player then return false end
local t = {}
for slot=1,9 do
t[slot] = ''
local s = getPlayerSlotItem(player,slot).uid
if s ~= 0 then
t[slot] = Item(s):getAttribute(ITEM_ATTRIBUTE_DESCRIPTION)
end
end
return t
end
function chk(cid,f)
if not Player(cid) then return false end
local t = loadSet(cid)
if not t then return false end
for i=1,#f do
if f[i] ~= t[i] then
equip(player,nil,slot)
break
end
end
addEvent(chk,2000,cid,t)
end
function check_slot(aab, i)
if i == 5 or i == 6 then
if isWeapon(aab) or isShield(aab) or isBow(aab) then
return true
end
else
return true
end
return false
end
function equip(player,item,slot)
local t = {}
if item then
local mm,sinal,qto = getSlotType(Item(item.uid):getAttribute(ITEM_ATTRIBUTE_DESCRIPTION))
t[mm] = tonumber(qto)
end
for i=1,9 do
if i ~= slot then
if getPlayerSlotItem(player,i).itemid ~= 0 then
local aab = getPlayerSlotItem(player,i).uid
if aab and check_slot(aab,i) then
for _ in Item(aab):getAttribute(ITEM_ATTRIBUTE_DESCRIPTION):gmatch('(%[.-%])') do
local mm,sinal,qto2 = getSlotType(_)
if mm then
if not t[mm] then
t[mm] = 0
end
t[mm] = t[mm]+tonumber(qto2)
t[mm] = t[mm] > 300 and 300 or t[mm]
end
end
end
end
end
end
local fu = 0
local ca = {}
local s = ''
for sl,n in pairs(t) do
fu = fu+1
s = s..''..n..'% more of '..sl..'\n'
if sl == 'hp' then
player:addCondition(conditionHP[tonumber(n)])
ca[50] = 1
doSendTutorial(player,19)
elseif sl == 'mp' then
player:addCondition(conditionMP[tonumber(n)])
ca[51] = 1
doSendTutorial(player,19)
elseif sl == 'ml' then
player:addCondition(conditionML[tonumber(n)])
ca[52] = 1
elseif sl == 'melee' then
player:addCondition(conditionCLUB[tonumber(n)])
ca[53] = 1
elseif sl == 'shield' then
player:addCondition(conditionSHI[tonumber(n)])
ca[54] = 1
elseif sl == 'dist' then
player:addCondition(conditionDIST[tonumber(n)])
ca[55] = 1
end
end
if fu > 0 then
for i=50,55 do
if not ca[i] then
doRemoveCondition(player:getId(),CONDITION_ATTRIBUTES,i)
end
end
else
for i=50,55 do
doRemoveCondition(player:getId(),CONDITION_ATTRIBUTES,i)
end
end
return true
end
function onLogin(player)
equip(player,nil,slot)
local cid = player:getId()
addEvent(chk,2000,cid,loadSet(cid))
return true
end
Error in console :
Code:
Lua Script Error: [CreatureScript Interface]
data/creaturescripts/scripts/slot.lua:onLogin
data/creaturescripts/scripts/slot.lua:158: attempt to index local 'player' (a nu
mber value)
stack traceback:
[C]: in function '__index'
data/creaturescripts/scripts/slot.lua:158: in function 'equip'
data/creaturescripts/scripts/slot.lua:165: in function <data/creaturescr
ipts/scripts/slot.lua:164>
Thanks!
Last edited: