Postado Novembro 30, 2013 11 anos Fala galerinha do tibiaking Estou com error no meu [CTF]. Esse ==========> http://www.tibiaking.com/forum/topic/11028-ctf-capture-the-flag/ =======;/ eo que eu uso no meu otserver Porem eu instalei tudo certo com npc mas o comando /ctf open não funfa se nopen = true, -- Precisa usar o comando para abrir? false não true sim <<< se eu coloco false e so fala com o npc e ele teleporta pro event mas como ativa pro event comeca se /ctf open n funfa e quando tento clicar nas Bandeiras não da nada. Esse evento funfa em 8.60 pq no meu ot não ta funcionando não da pra fazer nada. Esse eo que eu coloquei no lib : ========================================================================================= [CTF] Capture the flag ot/data/lib --[[ Capture The Flag System Author: Maxwell Denisson(MaXwEllDeN) Version: 1.0 ]] _CTF_LIB = { redid = 17530, greenid = 17531, Flagsto = 13221, teamssto = 17530, winp = 5, recompCTF = {{2157, 20}}, nopen = true, -- Precisa usar o comando para abrir? false não true sim CTFSto = 95712, TownExit = 2, -- Templo que o player será teletransportado quando acabar o evento ou ele sair dele. price = false, -- Preço para entrar no Evento, caso não precise Digite false. flags = {}, teamsOUT = {} } _CTF_LIB.flags = { [_CTF_LIB.redid] = {pos = {x = 695, y = 1460, z = 1}, posEflag = {x = 696, y = 1460, z = 1}, id = 1435, color = 180, na = "Vermelho", temple = 8, color = 180, out = { [1] = {lookType = 152, lookHead = 0, lookBody = 132, lookLegs = 113, lookFeet = 94}, [2] = {lookType = 156, lookHead = 0, lookBody = 94, lookLegs = 113, lookFeet = 113}, [3] = {lookType = 152, lookHead = 0, lookBody = 132, lookLegs = 113, lookFeet = 94, lookAddons = 3}} }, [_CTF_LIB.greenid] = {pos = {x = 341, y = 1430, z = 2}, posEflag = {x = 342, y = 1430, z = 2}, id = 1437, color = 30, na = "Verde", temple = 6, color = 31, out = { [1] = {lookType = 367, lookHead = 0, lookBody = 121, lookLegs = 101, lookFeet = 101}, [2] = {lookType = 366, lookHead = 0, lookBody = 121, lookLegs = 101, lookFeet = 101, lookAddons = 1}, [3] = {lookType = 367, lookHead = 0, lookBody = 121, lookLegs = 101, lookFeet = 101, lookAddons = 3}} } } for a, b in pairs(_CTF_LIB.flags) do local condition = createConditionObject(CONDITION_OUTFIT) setConditionParam(condition, CONDITION_PARAM_TICKS, 180000*1000) addOutfitCondition(condition, b.out[1]) local condition2 = createConditionObject(CONDITION_OUTFIT) setConditionParam(condition2, CONDITION_PARAM_TICKS, 180000*1000) addOutfitCondition(condition2, b.out[2]) local other = createConditionObject(CONDITION_OUTFIT) setConditionParam(other, CONDITION_PARAM_TICKS, 180000*1000) addOutfitCondition(other, b.out[3]) _CTF_LIB.teamsOUT[a] = {} _CTF_LIB.teamsOUT[a][0] = condition2 _CTF_LIB.teamsOUT[a][1] = condition _CTF_LIB.teamsOUT[a][2] = other end function MsgToCTFM(class, msg) for _, b in pairs (getOnlinePlayers()) do local b = getPlayerByNameWildcard(b) if (getPlayerStorageValue(b, _CTF_LIB.teamssto) > 0) then doPlayerSendTextMessage(b, class, msg) end end end function getTeamLivre() local teams = {} for a, b in pairs(_CTF_LIB.flags) do table.insert(teams, {getGlobalStorageValue(a), a}) end if (teams[1][1] < teams[2][1]) then return teams[1][2] elseif (teams[1][1] > teams[2][1]) then return teams[2][2] end local team = teams[math.random(#teams)][2] return team end function doFindItemInPos(ids,pos) -- By Undead Slayer local results = {} for _ = 0, 255 do local findPos = {x = pos.x, y = pos.y, z = pos.z, stackpos = _} if isInArray(ids, getThingFromPos(findPos).itemid) then table.insert(results, getThingFromPos(findPos)) end end return results end function CTF_createFlags() for a, b in pairs(_CTF_LIB.flags) do local item = doCreateItem(b.id, 1, b.pos) doItemSetAttribute(item, "uid", a) doItemSetAttribute(item, "aid", 67189) b.posEflag.stackpos = 0 local item = getThingFromPos(b.posEflag).uid doItemSetAttribute(item, "uid", a) doItemSetAttribute(item, "aid", 15312) setGlobalStorageValue(a-15, 0) setGlobalStorageValue(a, 0) end end function ComparePosition(pos1, pos2) if (((pos1.x ~= pos2.x) or (pos1.y ~= pos2.y) or (pos1.z ~= pos2.z))) then return false end return true end function CreateFlag(pos, id) if (#doFindItemInPos({id}, pos) < 1) then return doCreateItem(id, 1, pos) end return true end function RemoveFlag(pos, id) local iteims = doFindItemInPos({id}, pos) if (#iteims > 0) then for _, b in pairs(iteims) do doRemoveItem(b.uid, 1) end end return true end function WalkFlag(uid, team, pos, bant) local function Alert(pos) if (isCreature(uid)) then if (getPlayerStorageValue(uid, _CTF_LIB.Flagsto) < 1) or (getPlayerStorageValue(uid, _CTF_LIB.teamssto) < 1) then return RemoveFlag(getPPos(uid), _CTF_LIB.flags[bant].id) end if (getPlayerStorageValue(uid, _CTF_LIB.Flagsto) == 17001) then RemoveFlag(getPPos(uid), _CTF_LIB.flags[bant].id) return setPlayerStorageValue(uid, _CTF_LIB.Flagsto, -1) end if not(ComparePosition(getThingPos(uid), getPPos(uid))) then RemoveFlag(getPPos(uid), _CTF_LIB.flags[bant].id) setPPos(uid, getThingPos(uid)) CreateFlag(getThingPos(uid), _CTF_LIB.flags[bant].id) end addEvent(Alert, 250, pos) end end Alert(pos) return true end function setPPos(uid, pos) return setPlayerStorageValue(uid, 50117, "{x = ".. pos.x ..", y = ".. pos.y ..", z = ".. pos.z .."}") end function getPPos(uid) return loadstring('return ' .. getPlayerStorageValue(uid, 50117))() end function getFlag(uid, team, bant) setPPos(uid, getThingPos(uid)) CreateFlag(getThingPos(uid), _CTF_LIB.flags[bant].id) setPlayerStorageValue(uid, _CTF_LIB.Flagsto, bant) MsgToCTFM(22, getCreatureName(uid) .. " roubou a bandeira do time ".. _CTF_LIB.flags[bant].na .. "!") return WalkFlag(uid, team, getThingPos(uid), bant) end function devolverFlag(uid, team) if (#doFindItemInPos({_CTF_LIB.flags[team].id}, _CTF_LIB.flags[team].pos) < 1) then local item = doCreateItem(_CTF_LIB.flags[team].id, 1, _CTF_LIB.flags[team].pos) doItemSetAttribute(item, "uid", team) doItemSetAttribute(item, "aid", 67189) end return setPlayerStorageValue(uid, _CTF_LIB.Flagsto, 17001) end function addPoint(uid, team, bant) if (getGlobalStorageValue(team-15) < 0) then setGlobalStorageValue(team-15, 0) end RemoveFlag(getPPos(uid), _CTF_LIB.flags[bant].id) addEvent(devolverFlag, 2000, uid, bant) setGlobalStorageValue(team-15, getGlobalStorageValue(team-15)+1) msgi = "Capture The Flag by MaXwellDeN:\n" doSendAnimatedText(getThingPos(uid), "+POINT+", _CTF_LIB.flags[bant].color) for a, b in pairs (_CTF_LIB.flags) do if (getGlobalStorageValue(a-15) < 0) then setGlobalStorageValue(a-15, 0) end msgi = msgi .. "\n Time ".. b.na .." -> ".. getGlobalStorageValue(a-15) .. " point(s)." end for _, b in pairs (getOnlinePlayers()) do local b = getPlayerByNameWildcard(b) if (getPlayerStorageValue(b, _CTF_LIB.teamssto) > 0) then doPlayerSendTextMessage(b, 22, getCreatureName(uid) .. " entregou a bandeira do time ".. _CTF_LIB.flags[bant].na .. " e obteve 1 ponto para seu time!") doPlayerSendTextMessage(b, 27, msgi) end end for a, b in pairs(_CTF_LIB.flags) do if (getGlobalStorageValue(a-15) >= _CTF_LIB.winp) then for c, _ in pairs(_CTF_LIB.flags) do setGlobalStorageValue(c-15, 0) end for _, cid in pairs (getOnlinePlayers()) do local cid = getPlayerByNameWildcard(cid) if (getPlayerStorageValue(cid, _CTF_LIB.teamssto) > 0) then doPlayerSendTextMessage(cid, 27, "O Time ".. _CTF_LIB.flags[team].na .." venceu o Capture The Flag, por tanto todos os membros dessa equipa ganharam uma recompensa. Parabéns!") if (getPlayerStorageValue(cid, _CTF_LIB.teamssto) == a) then for _, y in pairs(_CTF_LIB.recompCTF) do doPlayerAddItem(cid, y[1], y[2]) end end doCreatureAddHealth(cid, getCreatureMaxHealth(cid)) doCreatureAddMana(cid, getCreatureMaxMana(cid)) doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doCreatureSetSkullType(cid, 0) setPlayerStorageValue(cid, _CTF_LIB.teamssto, -1) doRemoveCondition(cid, CONDITION_OUTFIT) doPlayerSetTown(cid, CTF.TownExit) end end break end end return true end setGlobalStorageValue(_CTF_LIB.CTFSto, -1) Se tiver algo errado Ajuda ae +rep o evento ta sem funções ajuda aeee .. Olha eu instalei tudo certo Mas não o motivo pq fico sem funções sem nada o npc eu criei ele e tal falo hi .. se eu coloca nopen = true ele fala que o event n começou mas se eu colocar false ele fala se eu quero ir pro event mas quand entro no event ele parece que esta desligado sem funções e nada + rep se alguem poder me ajuda ------------------------------------------------------------------------------------------------------ CTF_LIB = { redid = 17530, greenid = 17531, Flagsto = 13221, teamssto = 17530, qual a função de cada um desses e so entra no link que eu catei o event http://www.tibiaking.com/forum/topic/11028-ctf-capture-the-flag/ o event e automatico onde configuro isso os dias e etc ....
Postado Dezembro 5, 2013 11 anos O tópico foi movido para a área correta, preste mais atenção da próxima vez! Leia as regras do fórum: http://tibiaking.com/forum/topic/1281-regras-gerais/?p=7680 Este tópico foi movido: De: "Tibia King → Atendimento Geral" Para: "OTServ → Suporte OTServ"
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.