Ir para conteúdo

[Encerrado] (Erro) Golden Arena


BrunooMaciell

Posts Recomendados

Estou com um erro na minha golden arena !!

 

Erro

 

[17/12/2012 20:08:09] Error during getDataInt(Golden).

[17/12/2012 20:08:09] Error during getDataInt(Golden).

[17/12/2012 20:08:09] Error during getDataInt(Golden).

[17/12/2012 20:08:09] Error during getDataInt(Golden).

[17/12/2012 20:08:09] Error during getDataInt(Golden).

[17/12/2012 20:08:09] Error during getDataInt(Golden).

[17/12/2012 20:08:09] Error during getDataInt(Golden).

[17/12/2012 20:08:09] Error during getDataInt(Golden).

[17/12/2012 20:08:09] Error during getDataInt(Golden).

[17/12/2012 20:08:09] Error during getDataInt(Golden).

 

 

Script

 

--[[storages

22545 = player q entra na arena (normal)

22546 = monstros na arena (normal)

22547 = waves (global)

22548 = qnts monstros tem na arena (global)

22549 = nome dos players q vao pra arena (global)

22550 = qnts players tem na arena (global)

22551 = waves para cada player (normal)

]]

------------------------------------------------------------------------------------------------------------------

function doWave(start)

if getGlobalStorageValue(22550) >= 1 and getGlobalStorageValue(22548) <= 0 then

local wave = getGlobalStorageValue(22547) <= 0 and 1 or getGlobalStorageValue(22547)

local players = creaturesInGolden(GoldenUpper, GoldenLower, true) --pega os players na golden

for i = 1, #posisGolden do

if wavesGolden[wave] ~= "" then

local monster = doSummonCreature(wavesGolden[wave], posisGolden)

doSetMonsterPassive(monster)

doWildAttackPlayer(monster, players[math.random(#players)])

doSendMagicEffect(getThingPos(monster), 21)

setPlayerStorageValue(monster, 22546, 1)

local sto = getGlobalStorageValue(22548) <= 0 and 0 or getGlobalStorageValue(22548)

setGlobalStorageValue(22548, sto+1)

end

end

for a = 1, #players do

setPlayerStorageValue(players[a], 22551, wave)

end

setGlobalStorageValue(22547, wave+1)

end

end

------------------------------------------------------------------------------------------------------------------

function puxaParticipantes()

local s = ""

if getGlobalStorageValue(22549) ~= -1 then

s = string.explode(getGlobalStorageValue(22549), ",")

end

if type(s) ~= 'table' or s == "" then

print("Golden Arena will not begin, because no player are registered!")

return true

end

for i = 1, #s do

local sid = getPlayerByName(s)

if isCreature(sid) then

doTeleportThing(sid, getClosestFreeTile(sid, posGolden)) --pos pra onde os players vao ser teleportados quando a golden começar!

doSendMagicEffect(getThingPos(sid), 21)

if #getCreatureSummons(sid) >= 1 then

doTeleportThing(getCreatureSummons(sid)[1], getClosestFreeTile(getCreatureSummons(sid)[1], posGolden)) --pos pra onde os pokes dos players serao teleportados!

doSendMagicEffect(getThingPos(getCreatureSummons(sid)[1]), 21)

end

setPlayerStorageValue(sid, 22545, 1)

setGlobalStorageValue(22550, (getGlobalStorageValue(22550) <= 0 and 0 or getGlobalStorageValue(22550))+1)

end

end

setGlobalStorageValue(22549, -1)

end

------------------------------------------------------------------------------------------------------------------

function endGoldenArena(onStart)

for sto = 22547, 22550 do

setGlobalStorageValue(sto, -1)

end

addEvent(creaturesInGolden, 150, GoldenUpper, GoldenLower, false, true, true)

if not onStart then

print("The Golden Arena are finished!")

end

end

------------------------------------------------------------------------------------------------------------------

function creaturesInGolden(upper, lower, player, remove, clean) -- function by Vodkart and edited by Slicer

local players = {}

for x = upper.x - 1, lower.x + 1 do

for y = upper.y - 1, lower.y + 1 do

local pos = {x = x, y = y, z = upper.z}

local m = getTopCreature(pos).uid

if remove ~= false and m ~= 0 and ehMonstro(m) then doRemoveCreature(m) end

if clean ~= false and hasTile(pos) then doCleanTile(pos, false) end

if player ~= false and m ~= 0 and isPlayer(m) and getPlayerStorageValue(m, 22545) == 1 then table.insert(players, m) end

end

end

if player ~= false then return players end

end

------------------------------------------------------------------------------------------------------------------

function installRankGolden()

if db.executeQuery("ALTER TABLE `players` ADD `Golden` integer not null default 0;") then

if db.executeQuery("UPDATE `players` SET `Golden` = '10000' WHERE `id` = 1;") then

local dir = "data/globalevents/scripts/start.lua"

local arq = io.open(dir, "w")

local base = 'function onStartup()\n\ndb.executeQuery("UPDATE `players` SET `online` = 0 WHERE `world_id` = " .. getConfigValue("worldId") .. ";")\n'

base = base..'endGoldenArena(true)\n\nreturn true\nend'

arq:write(base)

arq:close()

 

print("Table 'Golden' added with success!")

end

end

return true

end

------------------------------------------------------------------------------------------------------------------

function getPlayerRecordWaves(cid)

if not isCreature(cid) then return 0 end

local pid = getPlayerGUID(cid)

local query = db.getResult("SELECT `Golden` FROM `players` WHERE `id` = "..pid..";")

if query:getID() == -1 then

return 0

end

return query:getDataInt("Golden")

end

------------------------------------------------------------------------------------------------------------------

function setPlayerRecordWaves(cid)

if not isCreature(cid) then return false end

local waves = getPlayerStorageValue(cid, 22551)

local acc = getPlayerGUID(cid)

if waves > getPlayerRecordWaves(cid) then

if db.executeQuery("UPDATE `players` SET `Golden` = '"..waves.."' WHERE `id` = "..acc..";") then

setPlayerStorageValue(cid, 22551, -1)

return true

end

end

return false

end

------------------------------------------------------------------------------------------------------------------

function getRankGolden()

local query = db.getResult("SELECT `id`, `Golden` FROM `players` ORDER BY `Golden` DESC;")

local str = "Rank of the Golden Arena:\n\n"

if query:getID() ~= -1 then

for i = 1, 10 do

if not(query:next()) or query:getDataInt("Golden") == 0 then

str = str..""..i.."° None - 0 wave.\n"

else

local s = tonumber(query:getDataInt("Golden")) > 1 and "s" or ""

str = str..""..i.."° "..getPlayerNameByGUID(query:getDataString("id")).." - "..query:getDataInt("Golden").." wave"..s..".\n"

end

end

query:free()

end

return str

end

------------------------------------------------------------------------------------------------------------------

 

 

Caso precise da script so pedir que eu posto ^^

 

Rep+++

 

Obs: preciso muito de ajuda sobre este erro ;D

 

Rep++

Editado por Brunnoo
Link para o comentário
Compartilhar em outros sites

Envie o script, mas por favor pare de criar tantos tópicos. Se não me engano é o segundo com o mesmo assunto..

 

@EDIT

Pelo que eu lembro, você devia ter instalado a tabela "GOLDEN"

Editado por Roksas
Link para o comentário
Compartilhar em outros sites

/\

eh como ele flo.. ta faltando a tabela golden na tua database... no minimo tu troco de database depois de pegar a atualizaçao 1.7...

vai em globalevents/scripts/start.lua e substitue oq tem la por isso..

function onStartup()

   db.executeQuery("UPDATE `players` SET `online` = 0 WHERE `world_id` = " .. getConfigValue('worldId') .. ";")
   endGoldenArena(true)   --alterado v1.7
   installRankGolden()

return true
end

dai reinicia o serv e pronto ^^

Link para o comentário
Compartilhar em outros sites

Aii ja editei o topico !!

 

coloquei a script da golden arena ^^

 

@Edited

 

Valeu Slicer !!

 

como senpre mi ajudando hoje nao posso da mais rep+ pq ja tidei cedo xD

 

mais amanha cedo tido de novo por ter mi ajudado ^^

Editado por Brunnoo
Link para o comentário
Compartilhar em outros sites

  • 5 years later...
A questão neste tópico de suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta.

+ Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda.
* Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado.
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...