Ir para conteúdo

War Of Emperium,nao Esta Funcionando


pemi

Posts Recomendados

Olá,

 

Obs:Nao sei se postei na área correta,se nao postei , peço desculpas e por favor mova-o

 

Bom minha War of Emperium nao quer abrir o teleport e nem aparece mensagem....

 

Arquivo VAR.WOE

Castle, woe_config, stor = {}, {}, {}

--Nome Do Castelo (?)
Castle.name = 'War of Emperium'
--Não Mecha se não vai bugar.
Castle.tiles = 3131
--Não Mecha se não vai bugar.
Castle.portals = 3132
--Não Mecha se não vai bugar.
Castle.banderas = 3133
--Não Mecha se não vai bugar.
Castle.bases = 3134
--Não Mecha se não vai bugar.
Castle.decoraciones = {}
--Templo do proprio castelo seria o piso amarelo no começo dele.
Castle.pos = {x = 55, y = 78, z = 7}
--Para onde seria teletransportado os players ao terminar o castle ou tivesse dominio.
Castle._exit = {x = 32360, y = 31782, z = 7}
--Onde o portal de entrada para o Castelo vai aparecer.
Castle.desde = {x = 32306, y = 31924, z = 7, stackpos = 1}
--true / false
default_map = true
--Não Mecha se não vai bugar.
--Posição do principal Gerador Emperor, fica no andar 5 sempre emcima da base amarela.
Castle.empePos = {x = 55, y = 34, z = 5, stackpos = 253}
if default_map then
local pos = Castle.empePos

--Não Mecha se não vai bugar.
Castle.guildEntry = {x = pos.x - 9, y = pos.y + 4, z = pos.z}

--Não Mecha se não vai bugar.
Castle.salas =
 {
  a = {fromx = pos.x - 18, tox = pos.x + 18, fromy = pos.y - 10, toy =  pos.y + 28, z = pos.z + 2},
  b = {fromx = pos.x - 18, tox = pos.x + 18, fromy = pos.y - 10, toy =  pos.y + 28, z = pos.z + 1},
  c = {fromx = pos.x - 18, tox = pos.x + 18, fromy = pos.y - 10, toy =  pos.y + 28, z = pos.z}
 }
--Não Mecha se não vai bugar.
Castle.PreEmpes =
 {
  {x = pos.x - 13, y = pos.y + 3, z = pos.z + 1, stackpos = 253},
  {x = pos.x + 13, y = pos.y + 3, z = pos.z + 1, stackpos = 253}
 }
--Não Mecha se não vai bugar.
Castle.PrePortalsPos =
 {
  {x = pos.x - 4, y =  pos.y - 6, z = pos.z + 1, stackpos = 1},
  {x = pos.x + 4, y =  pos.y - 6, z = pos.z + 1, stackpos = 1}
 }
Castle.PreToPos =
 {
  [1] = {x = pos.x - 7, y =  pos.y + 26, z = pos.z},
  [2] = {x = pos.x + 7, y =  pos.y + 26, z = pos.z}
 }
else
--Coordenada onde vai ser teletransportado ao usar atalho.
--[[
Castle.guildEntry = {x = 46, y = 38, z = 5}

Castle.salas =
 {
  a = {fromx=37, tox=73, fromy=24, toy=62, z=7},
  b = {fromx=37, tox=73, fromy=24, toy=62, z=6},
  c = {fromx=37, tox=73, fromy=24, toy=62, z=5}
 }
Castle.PreEmpes =
 {
  {x=42, y=37, z=6, stackpos=253},
  {x=68, y=37, z=6, stackpos=253}
 }
Castle.PrePortalsPos =
 {
  {x=51, y=28, z=6, stackpos=1},
  {x=59, y=28, z=6, stackpos=1}
 }
Castle.PreToPos =
 {
  [1] = {x = 46, y = 38, z = 5},
  [2] = {x = 64, y = 38, z = 5}
 }
]]
end
--Tempo de Duração do castelo.
woe_config.timeToEnd = 61
--Não Mecha se não vai bugar.
woe_config.bcType = MESSAGE_EVENT_ADVANCE
--Dias que vão ocorrer o War Of Emperium.
woe_config.dias = {"wednesday", "saturday"}
--Horario que vai começar automaticamente o War Of Emperium.
woe_config.horaPartida = 22
--Acesso para usar o comando /woe on, que inicia o castelo.
woe_config.accessToStar = 3
--Tempo de exausthed ao usar o comando !recall.
woe_config.recallTime = 5 * 60
--Não Mecha se não vai bugar.
woe_config.premios = true
--Não Mecha se não vai bugar.
stor.register = 8589
--Não Mecha se não vai bugar.
stor.recall = 23155
--Não Mecha se não vai bugar.
stor.Started = 7801
--Não Mecha se não vai bugar.
stor.WoeTime = 7802

 

Arquivo TMP.WOE

started = 1332961255 ;end;
guild = 31 ;end;
breaker = 909 ;end;
time = 1319684405 ;end;

 

Arquivo _woe.lua

dofile("./var.woe")
local config = woe_config
fileStore = true
infoFile = 'tmp.woe'
infoLua = {}
Woe = {}
Woe.__index = Woe
function Woe.setup()
db.query("DROP TABLE IF EXISTS `woe`;")
db.query("CREATE TABLE `woe` (`id` INT( 11 ) NOT NULL AUTO_INCREMENT ,`started` INT( 11 ) NOT NULL ,`guild` INT( 11 ) NOT NULL ,`breaker` INT( 11 ) NOT NULL ,`time` INT( 11 ) NOT NULL ,PRIMARY KEY ( `id` ) ,UNIQUE (`id`)) ENGINE = MYISAM")
doBroadcastMessage("DB Added [...]", config.bcType)
if fileStore then
 local newFile = io.open(infoFile, "w")
 for _, i in ipairs({'started', 'guild', 'breaker', 'time'}) do
  newFile:write(i .. ' = 0 ;end;\n')
 end
 newFile:close()
else
 db.query("DROP TABLE IF EXISTS `tmpwoe`;")
 db.query("CREATE TABLE `tmpwoe` (`started` INT( 11 ) NOT NULL ,`guild` INT( 11 ) NOT NULL ,`breaker` INT( 111 ) NOT NULL ,`time` INT( 1 ) NOT NULL) ENGINE = MYISAM ;")
 db.query("ALTER TABLE `tmpwoe` ADD `indexer` INT NOT NULL ")
 db.query("INSERT INTO `tmpwoe` (`started` ,`guild` ,`breaker` ,`time`, `indexer`)VALUES ('0', '0', '0', '0', '1');")
end
end
function Woe.getInfo()
if fileStore then
 local open = io.open(infoFile, "r")
 if open then
  for i in io.lines(infoFile) do
for v, k in ipairs({'started', 'guild', 'breaker', 'time'}) do
 if (i:find(k)) then
  n = i:match(k .. '.*')
  infoLua[v] = tonumber(n:sub(n:find('=') + 2, n:find(';end;') - 2))
 end
end
  end
  open:close()
 end
else
 for v, k in ipairs({'started', 'guild', 'breaker', 'time'}) do
  local tmp = db.getResult("SELECT " .. k .. " FROM `tmpwoe` WHERE `indexer` = '1';")
  infoLua[v] = tmp:getDataInt(k)
  tmp:free()
 end
end
end
function Woe.updateInfo(tab)
if fileStore then
 local open = io.open(infoFile, "w")
 if open then
  for k, i in ipairs({'started', 'guild', 'breaker', 'time'}) do
open:write(i .. ' = ' .. tab[k] .. ' ;end;\n')
  end
  open:close()
 end
else
 for v, k in ipairs({'started', 'guild', 'breaker', 'time'}) do
  db.query("UPDATE `tmpwoe` SET " .. k .. " =  " .. tab[v] .. " WHERE `indexer` = 1;")
 end
end
end
function Woe.save()
Woe.getInfo()
db.query("INSERT INTO `woe` (`started`, `guild`, `breaker`, `time`) VALUES (" .. infoLua[1] .. ", " .. infoLua[2] .. ", " .. infoLua[3] .. ", " .. infoLua[4] .. ");")
end
function Woe.getGuildName(id)
local res = db.getResult("SELECT `name` FROM `guilds` WHERE `id` = " .. id .. ";")
if (res:getID() ~= -1) then
 ret = res:getDataString('name')
 res:free()
end
return ret
end
function Woe.breakerName()
Woe.getInfo()
return infoLua[3] ~= 0 and getPlayerNameByGUID(infoLua[3]) or 'None'
end
function Woe.guildName()
Woe.getInfo()
return infoLua[2] ~= 0 and Woe.getGuildName(infoLua[2]) or 'Nones'
end
function Woe.startTime()
Woe.getInfo()
return os.date("%d %B %Y %X ", infoLua[1])
end
function Woe.breakTime()
Woe.getInfo()
return os.date("%d %B %Y %X ", infoLua[4])
end
function Woe.timeToEnd()
Woe.getInfo()
local myTable = {}
for k, i in ipairs({"%M", "%S"}) do
 myTable[k] = os.date(i, os.difftime(os.time(), infoLua[1]))
end
return {mins = ((config.timeToEnd - 1) - myTable[1]), secs = (60 - myTable[2])}
end
function Woe.moveBack(cid, fromPosition, text)
doTeleportThing(cid, fromPosition, TRUE)
doPlayerSendCancel(cid, text)
end
function Woe.getGuildMembers(id)
local members = {}
for _, i in ipairs(getPlayersOnline()) do
 if id == getPlayerGuildId(i) then
  table.insert(members, i)
 end
end
return members
end
function Woe.deco(text)
for _, i in ipairs(Castle.decoraciones) do
 doItemSetAttribute(i, "description", text)
end
end
function Woe.removePortals()
for _, i in ipairs(Castle.PrePortalsPos) do
 if (getThingFromPos(i).itemid > 0) then
  doRemoveItem(getThingFromPos(i).uid)
 end
end
end
function Woe.removePre()
for _, i in ipairs(Castle.PreEmpes) do
 if (isCreature(getThingFromPos(i).uid) == true) then
  doRemoveCreature(getThingFromPos(i).uid)
 end
end
end
function Woe.checkPre()
local Count = 0
for _, i in ipairs(Castle.PreEmpes) do
 if (isCreature(getThingFromPos(i).uid) == false) then
  Count = Count + 1
 end
end
return (Count == #Castle.PreEmpes)
end
function Woe.isTime()
return (getGlobalStorageValue(stor.WoeTime) == 1)
end
function Woe.isStarted()
return (getGlobalStorageValue(stor.Started) == 1)
end
function Woe.isRegistered(cid)
return (getPlayerStorageValue(cid, stor.register) == 1)
end
function Woe.isInCastle(cid)
local myPos = getCreaturePosition(cid)
if (myPos.x >= Castle.salas.a.fromx and myPos.x <= Castle.salas.a.tox) then
 if (myPos.y >= Castle.salas.a.fromy and myPos.y <= Castle.salas.a.toy) then
  if isInArray({Castle.salas.a.z, Castle.salas.b.z, Castle.salas.c.z}, myPos.z) then
return true
  end
 end
end
return false
end
function Woe.expulsar(guild, fromx, tox, fromy, toy, z, outpos)
for _x = fromx, tox do
 for _y = fromy, toy do
  local player = getThingFromPos({x = _x, y = _y, z = z, stackpos = 253}).uid
  if (isPlayer(player) == true) then
if (getPlayerGuildId(player) ~= guild) then
 doTeleportThing(player, outpos, false)
end
  end
 end
end
end
-- extras
function doSetItemActionId(uid, action)
doItemSetAttribute(uid, "aid", action)
end
function exhaust(cid, storevalue, exhausttime)
-- Exhaustion function by Alreth, v1.1 2006-06-24 01:31
-- Returns 1 if not exhausted and 0 if exhausted
newExhaust = os.time()
oldExhaust = getPlayerStorageValue(cid, storevalue)
if (oldExhaust == nil or oldExhaust < 0) then
	oldExhaust = 0
end
if (exhausttime == nil or exhausttime < 0) then
	exhausttime = 1
end
diffTime = os.difftime(newExhaust, oldExhaust)
if (diffTime >= exhausttime or diffTime < 0) then
	setPlayerStorageValue(cid, storevalue, newExhaust)
	return 1
else
	return 0
end
end
--Posição dos guardas que vão defender o Castelo.
guard_pos =
{
 {x = 54, y = 26, z = 5},
 {x = 56, y = 26, z = 5}
}

function Woe.check()
for storage = 24504, 24511 do
 local pid = getGlobalStorageValue(storage)
 if isCreature(pid) then
  return false
 end
end
return true
end
function Woe.summon()
for k, i in ipairs(guard_pos) do
 local pid = doSummonCreature("guard", i)
 setGlobalStorageValue(24503 + k, pid)
end
end
function Woe.remove()
for storage = 24504, 24511 do
 local pid = getGlobalStorageValue(storage)
 if isCreature(pid) then
  doRemoveCreature(pid)
 end
end
end
function pegavencedor()
local aa
local res = db.getResult("SELECT `guild` FROM `woe` ORDER BY `id` DESC;")
if (res:getID() ~= -1) then
 aa = res:getDataString('guild')
 res:free()
else
 res:free()
 return 0
end
return aa
end

 

Gostaria de saber onde esta errado,se precisar eu posto os outros script de Actions,etc...

Obrigado

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

×
×
  • Criar Novo...