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

Help with this error ;d

Sigoles

Discord: @sigoles
Joined
Nov 20, 2015
Messages
1,209
Solutions
2
Reaction score
154
Code:
Lua Script Error: [CreatureScript Interface]
data/creaturescripts/scripts/quests/killing in the name of/taskparty.lua:onDeath
...ipts/scripts/quests/killing in the name of/taskparty.lua:30: attempt to call method 'getRealMembers' (a nil value)
stack traceback:
    [C]: in function 'getRealMembers'
    ...ipts/scripts/quests/killing in the name of/taskparty.lua:30: in function <...ipts/scripts/quests/killing in the name of/taskparty.lua:9>

LUA:
function onDeath(creature, corpse, killer, mostDamageKiller, unjustified, mostDamageUnjustified)
    if creature:isPlayer() or creature:getMaster() then
        return true
    end
   
    if not creature then
        return true
    end
   
    local party = nil
   
    if killer then
        if killer:isPlayer() then
            party = killer:getParty()
        elseif killer:getMaster() then
            party = killer:getMaster():getParty()
        end
    end
   
    if party and party:isSharedExperienceEnabled() then
        local killers = {}
        local partyMembers = party:getRealMembers()
 
Solution
put this in global.lua
LUA:
function Party.getRealMembers(self)
    local members = self:getMembers()
    members[#members + 1] = self:getLeader()
    return members
end
put this in global.lua
LUA:
function Party.getRealMembers(self)
    local members = self:getMembers()
    members[#members + 1] = self:getLeader()
    return members
end
 
Solution
put this in global.lua
LUA:
function Party.getRealMembers(self)
    local members = self:getMembers()
    members[#members + 1] = self:getLeader()
    return members
end

hi thanks bro! I was removed one lib lol

I see this script here, is the same?
It seems like your script is optimized or I'm wrong?

LUA:
function Party.getRealMembers(self)
    local members = {}
   
    table.insert(members, self:getLeader())
    for i = 1, #self:getMembers() do
        local member = self:getMembers()[i]
        table.insert(members, member)
    end
    return members
end
 
mine's more optimized, that function uses 2 tables + table.insert which is slower
it's simpler to insert into the orginal self:getMembers() table rather than creating a new table and copying each member into a new table
 
Back
Top