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

imback1

Unknown member
Joined
Jul 11, 2013
Messages
785
Solutions
1
Reaction score
46
Hello otlanders, i need function to put it on something like event when i finish it and receive my prize the character will logout automatically, That's all :)
Thanks in advance

Bump
 
Last edited by a moderator:
Yes, that will make a character logout.
Hmm i tried to add it here but i got only the cup without other items and got this error
Code:
local config = {
    playerCount = 2001, -- Global storage for counting the players left/entered in the event
   
    goblet = 5805, -- id of the gold goblet you'll get when finishing the event.
    rewards = {2195, 2152, 2160}, -- You will get this +  a gold goblet with your name on.
    --        {moneyId, count, using? 1 for using moneyReward, 0 for not using.}
    moneyReward = {2160, 10, 1},
   
    -- Should be same as in the globalevent!
    -- The zombies will spawn randomly inside this area
    fromPosition = {x = 974, y = 762, z = 7}, -- top left cornor of the playground
    toPosition = {x = 1018, y = 821, z = 7}, -- bottom right cornor of the playground
    }

function onStatsChange(cid, attacker, type, combat, value)
    if isPlayer(cid) and isMonster(attacker) then
        if isInArea(getPlayerPosition(cid), config.fromPosition, config.toPosition) then
            if getGlobalStorageValue(config.playerCount) > 2 then
                doBroadcastMessage(getPlayerName(cid) .. " have been eated by Zombies!", MESSAGE_STATUS_CONSOLE_RED)
                local corpse = doCreateItem(3058, 1, getPlayerPosition(cid))
                doItemSetAttribute(corpse, "description", "You recognize " .. getCreatureName(cid) .. ". He was killed by "..(isMonster(attacker) and "a "..string.lower(getCreatureName(attacker)) or isCreature(attacker) and getCreatureName(attacker) or "a field item")..".")
                doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
                doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)), false)
                doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT)
                setGlobalStorageValue(config.playerCount, getGlobalStorageValue(config.playerCount)-1)
            elseif getGlobalStorageValue(config.playerCount) == 2 then
            doBroadcastMessage(getPlayerName(cid) .. " have been eated by Zombies!", MESSAGE_STATUS_CONSOLE_RED)
            setGlobalStorageValue(config.playerCount, 0)
            if isInArea(getPlayerPosition(cid), config.fromPosition, config.toPosition) then
                doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)), false)
    for _, pid in ipairs(getPlayersOnline()) do
        if isInRange(getPlayerPosition(pid), config.fromPosition, config.toPosition) then
         cid = pid
         end
         end
                    doBroadcastMessage(getPlayerName(cid) .. " won the Zombie event! Congratulations!", MESSAGE_STATUS_WARNING)
                    local goblet = doPlayerAddItem(cid, config.goblet, 1)
                    doItemSetAttribute(goblet, "description", "Awarded to " .. getPlayerName(cid) .. " for winning the Zombie event.")
                    local corpse = doCreateItem(3058, 1, getPlayerPosition(cid))
                    doItemSetAttribute(corpse, "description", "You recognize " .. getCreatureName(cid) .. ". He was killed by "..(isMonster(attacker) and "a "..string.lower(getCreatureName(attacker)) or isCreature(attacker) and getCreatureName(attacker) or "a field item")..".")
                    doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)
                    doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid)), false)
                    doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT)
                    for _,items in ipairs(config.rewards) do
                        doPlayerAddItem(cid, items, 1)
                    end
                    if config.moneyReward[3] == 1 then
                        doPlayerAddItem(cid, config.moneyReward[1], config.moneyReward[2])
                    end
                end
                doRemoveCreature(cid)
                       
                for x = config.fromPosition.x, config.toPosition.x do
                    for y = config.fromPosition.y, config.toPosition.y do
                        for z = config.fromPosition.z, config.toPosition.z do
                            areapos = {x = x, y = y, z = z, stackpos = 253}
                            getMonsters = getTopCreature(areapos)
                            if isMonster(getMonsters.uid) then
                                doRemoveCreature(getMonsters.uid)
                            end
                        end
                    end
                end
            end
            return false
        end
    end
return true
end
Code:
05/04/2015 16:30:28] > Broadcasted message: "Yahoo won the Zombie event! Congratulations!".
[05/04/2015 16:30:28] Yahoo has logged out.

[05/04/2015 16:30:28] [Error - CreatureScript Interface]
[05/04/2015 16:30:28] data/creaturescripts/scripts/zombieevent/creaturescript.lua:onStatsChange
[05/04/2015 16:30:28] Description:
[05/04/2015 16:30:28] (luaDoPlayerAddItem) Player not found

[05/04/2015 16:30:28] [Error - CreatureScript Interface]
[05/04/2015 16:30:28] data/creaturescripts/scripts/zombieevent/creaturescript.lua:onStatsChange
[05/04/2015 16:30:28] Description:
[05/04/2015 16:30:28] (luaDoPlayerAddItem) Player not found

[05/04/2015 16:30:28] [Error - CreatureScript Interface]
[05/04/2015 16:30:28] data/creaturescripts/scripts/zombieevent/creaturescript.lua:onStatsChange
[05/04/2015 16:30:28] Description:
[05/04/2015 16:30:28] (luaDoPlayerAddItem) Player not found

[05/04/2015 16:30:28] [Error - CreatureScript Interface]
[05/04/2015 16:30:28] data/creaturescripts/scripts/zombieevent/creaturescript.lua:onStatsChange
[05/04/2015 16:30:28] Description:
[05/04/2015 16:30:28] (luaDoPlayerAddItem) Player not found
 
In the script the function is under the part where it gives items, are you sure you tested it like this? Because in the console the player first logs out and then gives these errors.
 
In the script the function is under the part where it gives items, rare you sure you tested it like this? Because in the console the player first logs out and then gives these errors.
Yea i tested it like this
 
You can do this, so it runs after 1 second.
Code:
addEvent(function(cid) if isPlayer(cid) then doRemoveCreature(cid) end, 1000, cid)
 
Back
Top