Ir para conteúdo

(Resolvido)data/globalevents/scripts/events/zombie.lua:3: unexpected symbol near '=' , quem resolver pra mim dou REP+ bem grandão

Featured Replies

Postado

ja procurei em tudo e minha script ta certissima, esta aparecendo esse erro:

 

[Error - LuaInterface::loadFile] data/globalevents/scripts/events/zombie.lua:3: unexpected symbol near '='
[3:6:10.226] [Warning - Event::loadScript] Cannot load script (data/globalevents/scripts/events/zombie.lua)
[3:6:10.226] data/globalevents/scripts/events/zombie.lua:3: unexpected symbol near '='
[3:6:10.226] [Error - LuaInterface::loadFile] data/globalevents/scripts/events/zombie.lua:3: unexpected symbol near '='
[3:6:10.226] [Warning - Event::loadScript] Cannot load script (data/globalevents/scripts/events/zombie.lua)
[3:6:10.242] data/globalevents/scripts/events/zombie.lua:3: unexpected symbol near '='

 

MINHA SCRIPT:

 

local c = {
    teleportPosition = {x = 150, y = 55, z = 7}, stackpos = 1},
    teleportToPosition = {x = 848, y = 78, z = 7},
    fromPosition = {x = 817, y = 48, z = 7},
    toPosition = {x = 886, y = 116, z = 7},
    availablePos = {},
}

function onTime ()
    doItemSetAttribute(doCreateTeleport(1387, c.teleportToPosition, c.teleportPosition), "aid", 1742)
    doBroadcastMessage("Zombie event starting in 3 minutes! The teleport will be closed when the event start!", MESSAGE_STATUS_WARNING)
    setGlobalStorageValue(3, 0)
    addEvent(startEvent, 3 * 60 * 1000)
    return true
end

function startEvent()
    doRemoveItem(getTileItemById(c.teleportPosition, 1387).uid, 1)
    if getGlobalStorageValue(3) > 0 then
        addEvent(spawnZombie, 10 * 1000)
        doBroadcastMessage("Good luck in the zombie event people! The teleport has closed!", MESSAGE_STATUS_WARNING)
    else
        doBroadcastMessage('Zombie Event hasn\'t started beacuse there were not enough players.')
    end
end

function spawnZombie()
    if getGlobalStorageValue(3) > 0 then
        if #c.availablePos == 0 then 
            for xin = c.fromPosition.x, c.toPosition.x do
                for yin = c.fromPosition.y, c.toPosition.y do 
                    if isWalkable({x = xin, y = yin, z = c.fromPosition.z}, true, false, false) then
                        table.insert(c.availablePos, #c.availablePos + 1, {x = xin, y = yin, z = c.fromPosition.z}) -- Note que não e mais de 1 andar
                    end
                end 
            end 
        end 
        pos = c.availablePos[math.random(1, #c.availablePos)]
        doCreateMonster("Event Zombie", pos)
        doSendMagicEffect(pos, CONST_ME_MORTAREA)
        addEvent(spawnZombie, 10 * 1000)
    end
end

 

 

 

ISSO EH De um evento, o zombie event, e não está iniciando o evento na hora correta pois está dando esse erro na distro, vou deixar a parte que fica no globalevents.xml:

 

<globalevent name="zombieevent" time="02:58" event="script" value="events/zombie.lua"/>
    <globalevent name="zombieevent2" time="03:00" event="script" value="events/zombie.lua"/>

 

 

 

Editado por Fabio Leandro (veja o histórico de edições)

Resolvido por Leohige

Ir para solução
Postado
  • Solução

Testa ai

 

Spoiler

local c = {
    teleportPosition = {x = 150, y = 55, z = 7, stackpos = 1},
    teleportToPosition = {x = 848, y = 78, z = 7},
    fromPosition = {x = 817, y = 48, z = 7},
    toPosition = {x = 886, y = 116, z = 7},
    availablePos = {},
}
function onTime ()
    doItemSetAttribute(doCreateTeleport(1387, c.teleportToPosition, c.teleportPosition), "aid", 1742)
    doBroadcastMessage("Zombie event starting in 3 minutes! The teleport will be closed when the event start!", MESSAGE_STATUS_WARNING)
    setGlobalStorageValue(3, 0)
    addEvent(startEvent, 3 * 60 * 1000)
    return true
end
function startEvent()
    doRemoveItem(getTileItemById(c.teleportPosition, 1387).uid, 1)
    if getGlobalStorageValue(3) > 0 then
        addEvent(spawnZombie, 10 * 1000)
        doBroadcastMessage("Good luck in the zombie event people! The teleport has closed!", MESSAGE_STATUS_WARNING)
    else
        doBroadcastMessage('Zombie Event hasn\'t started beacuse there were not enough players.')
    end
end
function spawnZombie()
    if getGlobalStorageValue(3) > 0 then
        if #c.availablePos == 0 then 
            for xin = c.fromPosition.x, c.toPosition.x do
                for yin = c.fromPosition.y, c.toPosition.y do 
                    if isWalkable({x = xin, y = yin, z = c.fromPosition.z}, true, false, false) then
                        table.insert(c.availablePos, #c.availablePos + 1, {x = xin, y = yin, z = c.fromPosition.z}) -- Note que não e mais de 1 andar
                    end
                end 
            end 
        end 
        pos = c.availablePos[math.random(1, #c.availablePos)]
        doCreateMonster("Event Zombie", pos)
        doSendMagicEffect(pos, CONST_ME_MORTAREA)
        addEvent(spawnZombie, 10 * 1000)
    end
end

 

 

Postado
  • Autor

deu certo irmão, mto obrigado. oq vc fez?

irmão ja que vc é foda demais, poderia me ajudar em outro erro que to tendo a muito tempo? se nao quiser resolver por aqui resolve por mensagem mesmo.

 

ERRO DA DISTRO:

 

[12:7:29.199] >> Loading script systems
[12:7:29.868] [Error - LuaInterface::loadFile] data/creaturescripts/scripts/login.lua:80: '<eof>' expected near 'end'
[12:7:29.869] [Warning - Event::loadScript] Cannot load script (data/creaturescripts/scripts/login.lua)
[12:7:29.870] data/creaturescripts/scripts/login.lua:80: '<eof>' expected near 'end'

 

data/creaturescripts/scripts/login.lua:

 

local config = {
loginMessage = getConfigValue('loginMessage'),
useFragHandler = getBooleanFromString(getConfigValue('useFragHandler'))
}
function onLogin(cid)
local loss = getConfigValue('deathLostPercent')
if(loss ~= nil) then
doPlayerSetLossPercent(cid, PLAYERLOSS_EXPERIENCE, loss * 10)
end
local accountManager = getPlayerAccountManager(cid)
if(accountManager == MANAGER_NONE) then
local lastLogin, str = getPlayerLastLoginSaved(cid), config.loginMessage
if(lastLogin > 0) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
str = "Your last visit was on " .. os.date("%a %b %d %X %Y", lastLogin) .. "."
else
str = str .. " Please choose your outfit."
doPlayerSendOutfitWindow(cid)
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, str)
elseif(accountManager == MANAGER_NAMELOCK) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, it appears that your character has been namelocked, what would you like as your new name?")
elseif(accountManager == MANAGER_ACCOUNT) then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type {account} to manage your account and if you want to start over then type {cancel}.")
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Hello, type {account} to create an account or type {recover} to recover an account.")
end
if(not isPlayerGhost(cid)) then
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
end
registerCreatureEvent(cid, "petKill")
registerCreatureEvent(cid, "critical")

   registerCreatureEvent(cid, "petDeath")

   registerCreatureEvent(cid, "petSta")
end
registerCreatureEvent(cid, "ReportBug")
registerCreatureEvent(cid, "AdvanceSave")
registerCreatureEvent(cid, "advance")
registerCreatureEvent(cid, "FimVip")
registerCreatureEvent(cid, "SkullCheck")
registerCreatureEvent(cid, "ReportBug")
registerCreatureEvent(cid, "VipReceive")
registerCreatureEvent(cid, "PlayerKill")
registerCreatureEvent(cid, "TiraBattle")
if (InitArenaScript ~= 0) then
InitArenaScript = 1
-- make arena rooms free
for i = 42300, 42309 do
setGlobalStorageValue(i, 0)
setGlobalStorageValue(i+100, 0)
end
end
-- if he did not make full arena 1 he must start from zero
if getPlayerStorageValue(cid, 42309) < 1 then
for i = 42300, 42309 do
setPlayerStorageValue(cid, i, 0)
end
end
-- if he did not make full arena 2 he must start from zero
if getPlayerStorageValue(cid, 42319) < 1 then
for i = 42310, 42319 do
setPlayerStorageValue(cid, i, 0)
end
end
-- if he did not make full arena 3 he must start from zero
if getPlayerStorageValue(cid, 42329) < 1 then
for i = 42320, 42329 do
setPlayerStorageValue(cid, i, 0)
end
end
if getPlayerStorageValue(cid, 42355) == -1 then
setPlayerStorageValue(cid, 42355, 0) -- did not arena level
end
setPlayerStorageValue(cid, 42350, 0) -- time to kick 0
setPlayerStorageValue(cid, 42352, 0) -- is not in arena 
registerCreatureEvent(cid, "deathchannel") 
return true
end
if getPlayerStorageValue(cid, 48913) == -1 then
setPlayerStorageValue(cid, 48913, 0) 
end 
 

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo