Jump to content
  • 0

Unexpected Symbol Near


Squash01

Question

Entao Tenho este Script do Futebol,

So que esta dando este erro no Distro

 

[11/1/2016 22:36:15] [Error - LuaInterface::loadFile] data/npc/scripts/juiz.lua:18: unexpected symbol near '['
[11/1/2016 22:36:15] [Warning - NpcEvents::NpcEvents] Cannot load script: data/npc/scripts/juiz.lua
[11/1/2016 22:36:15] data/npc/scripts/juiz.lua:18: unexpected symbol near '['
Aqui o Script


local focuses = {}

local function isFocused(cid)

for i, v in pairs(focuses) do

if(v == cid) then

return true

end

end

return false

end[/left]


local function addFocus(cid)

if(not isFocused(cid)) then

table.insert(focuses, cid)

end

end

local function removeFocus(cid)

for i, v in pairs(focuses) do

if(v == cid) then

table.remove(focuses, i)

break

end

end

end

local function lookAtFocus()

for i, v in pairs(focuses) do

if(isPlayer(v)) then

doNpcSetCreatureFocus(v)

return

end

end

doNpcSetCreatureFocus(0)

end

function onCreatureAppear(cid)

end

function onCreatureDisappear(cid)

if(isFocused(cid)) then

selfSay("Hmph!")

removeFocus(cid)

if(isPlayer(cid)) then --Be sure he's online

closeShopWindow(cid)

end

end

end

function onCreatureSay(cid, type, msg)

end

function onPlayerCloseChannel(cid)

if(isFocused(cid)) then

selfSay("Hmph!")

closeShopWindow(cid)

removeFocus(cid)

end

end

function onThink()

for i, focus in pairs(focuses) do

if(not isCreature(focus)) then

removeFocus(focus)

else

local distance = getDistanceTo(focus) or -1

if((distance > 4) or (distance == -1)) then

selfSay("Hmph!")

closeShopWindow(focus)

removeFocus(focus)

end

end

end

lookAtFocus()

end

E Este Esta Dando este erro
[11/1/2016 22:36:16] [Error - Action Interface]
[11/1/2016 22:36:16] data/actions/scripts/futebol.lua:onUse
[11/1/2016 22:36:16] Description:
[11/1/2016 22:36:16] data/actions/scripts/futebol.lua:587: attempt to concatenate local 'uidMonstro' (a boolean value)
[11/1/2016 22:36:16] stack traceback:
[11/1/2016 22:36:16] data/actions/scripts/futebol.lua:587: in function <data/actions/scripts/futebol.lua:452>
Aqui o Script

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

----- ### Sistema de Futebol ### -----

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

-- Feito por: zathao --

-- Msn: mayckon_bernardes@@Hotmail.com --

-- email: zathao@gmail.com --

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


-- Configurações Gerais

local config = {

-- Posição que o jogadores devem estar na hora de puxar a alavanca

posJogador1 = {x=345,y=1702,z=7, stackpos=1},

posJogador2 = {x=347,y=1702,z=7, stackpos=1},


-- Posição inicial dos jogadores na partida

posTeleporte1 = {x=344,y=1697,z=7, stackpos=1},

posTeleporte2 = {x=348,y=1697,z=7, stackpos=1},


posBola = {x=346,y=1697,z=7, stackpos=1}, -- Posição inicial da bola


nomeNpc = "Juiz", -- Lembrando que o npc deve existir

posNpc = {x=346,y=1692,z=7, stackpos=1}, -- Posição inicial do npc


gols = 5, -- Quantidade de gols para ganhar o jogo


tempoPrePartida = 5, -- Tempo de espera para começar a partida (segundos)


quantidadeTorcedores = 7, -- Para cada equipe


-- Posição inicial em que o script irá começar preencher com os torcedores

posTorcida1 = {x=337,y=1702,z=7, stackpos=1},

posTorcida2 = {x=349,y=1702,z=7, stackpos=1},


-- Posição dos gols

posGol1 = {

{x=337,y=1696,z=7, stackpos=1},

{x=337,y=1697,z=7, stackpos=1},

{x=337,y=1698,z=7, stackpos=1}

},

posGol2 = {

{x=335,y=1696,z=7, stackpos=1},

{x=335,y=1697,z=7, stackpos=1},

{x=335,y=1698,z=7, stackpos=1}

}

}


local jogador1 = nil

local jogador2 = nil


local listaTorcedores1 = ""

local listaTorcedores2 = ""


local npcUid = nil


local placar = { 0,0 }


local eventoTorcida = nil

local eventoGol = nil


local function inicioJogo()

doCreatureSay(npcUid, "Valendo!", TALKTYPE_YELL)


doSendMagicEffect(config.posTeleporte1, 12)

doSendMagicEffect(config.posTeleporte2, 12)


doCreatureSetNoMove(jogador1, false)

doCreatureSetNoMove(jogador2, false)


end


local function torcida(nome1, nome2)

local chanceTorcida1 = math.random(1,2)

local chanceTorcida2 = math.random(1,2)


if(chanceTorcida1>1)then

local uids = string.explode(listaTorcedores1, ",")

local torcedor = uids[math.random(1,#uids)]

doCreatureSay(torcedor, "Vai "..nome1.."!", TALKTYPE_YELL)

end


if(chanceTorcida2>1)then

local uids = string.explode(listaTorcedores2, ",")

local torcedor = uids[math.random(1,#uids)]

doCreatureSay(torcedor, "Vai "..nome2.."!", TALKTYPE_YELL)

end


eventoTorcida = addEvent(torcida,4000, nome1, nome2)

end


local function delayMsg(msg)

doCreatureSay(npcUid, msg, TALKTYPE_YELL)

end


local function testeGol(nome1,nome2)

for i=1,#config.posGol1 do

for j=1,10 do

local testPos = {x=config.posGol1.x, y=config.posGol1.y, z=config.posGol1.z, stackpos=j}

local thing = getThingFromPos(testPos)


if(thing.itemid==2109)then

if(placar[2]==config.gols-1)then

doPlayerSendTextMessage(jogador2, MESSAGE_INFO_DESCR, "Parabéns! Você ganhou a partida.")

doPlayerSendTextMessage(jogador1, MESSAGE_INFO_DESCR, "Lamento, mas você perdeu o jogo.")


doTeleportThing(jogador1, config.posJogador1)

doTeleportThing(jogador2, config.posJogador2)


doSendMagicEffect(config.posJogador1, 12)

doSendMagicEffect(config.posJogador2, 12)


local item = doPlayerAddItem(jogador2, 5805)

doItemSetAttribute(item, "description", nome2.." conquistou este troféu apos derrotar "..nome1.." em uma partida de futebol.")


doRemoveCreature(npcUid)


stopEvent(eventoTorcida)

stopEvent(eventoGol)


local uids1 = string.explode(listaTorcedores1, ",")

local uids2 = string.explode(listaTorcedores2, ",")


for k = 1, #uids1 do

doRemoveCreature(uids1[k])

doRemoveCreature(uids2[k])

end


jogador1 = nil

jogador2 = nil


listaTorcedores1 = ""

listaTorcedores2 = ""


config.posTorcida1 = {x=76,y=165,z=7, stackpos=1}

config.posTorcida2 = {x=84,y=165,z=7, stackpos=1}


npcUid = nil


placar = { 0,0 }


else


doTeleportThing(jogador1, config.posTeleporte1)

doTeleportThing(jogador2, config.posTeleporte2)


doSendMagicEffect(config.posTeleporte1, 10)

doSendMagicEffect(config.posTeleporte2, 10)


doCreatureSetNoMove(jogador1, true)

doCreatureSetNoMove(jogador2, true)


doCreatureSetLookDirection(jogador1, 1)

doCreatureSetLookDirection(jogador2, 3)


doCreateItem(2109, 1, config.posBola)

doSendMagicEffect(config.posBola, 13)


local uids = string.explode(listaTorcedores2, ",")


for k = 1, #uids do

doCreatureSay(uids[k], "GOOOOL!", TALKTYPE_YELL)

end


placar[2] = placar[2]+1


local msg = "Gol do "..nome2.."! O placar atual é "..nome1..": "..placar[1].." e "..nome2..": "..placar[2].."."

addEvent(delayMsg,1000, msg)


msg = "A próxima rodada irá começar em cerca de "..config.tempoPrePartida.." segundos. Concentrem-se!"

addEvent(delayMsg,6000, msg)


addEvent(inicioJogo,7000+(config.tempoPrePartida*1000))

end


doRemoveItem(thing.uid)

end

end

end


for i=1,#config.posGol2 do

for j=1,10 do

local testPos = {x=config.posGol2.x, y=config.posGol2.y, z=config.posGol2.z, stackpos=j}

local thing = getThingFromPos(testPos)


if(thing.itemid==2109)then

if(placar[1]==config.gols-1)then

doPlayerSendTextMessage(jogador1, MESSAGE_INFO_DESCR, "Parabéns! Você ganhou a partida.")

doPlayerSendTextMessage(jogador2, MESSAGE_INFO_DESCR, "Lamento, mas você perdeu o jogo.")


doTeleportThing(jogador1, config.posJogador1)

doTeleportThing(jogador2, config.posJogador2)


doSendMagicEffect(config.posJogador1, 12)

doSendMagicEffect(config.posJogador2, 12)


local item = doPlayerAddItem(jogador1, 5805)

doItemSetAttribute(item, "description", nome1.." conquistou este troféu apos derrotar "..nome2.." em uma partida de futebol.")


doRemoveCreature(npcUid)


stopEvent(eventoTorcida)

stopEvent(eventoGol)


local uids1 = string.explode(listaTorcedores1, ",")

local uids2 = string.explode(listaTorcedores2, ",")


for k = 1, #uids1 do

doRemoveCreature(uids1[k])

doRemoveCreature(uids2[k])

end


jogador1 = nil

jogador2 = nil


listaTorcedores1 = ""

listaTorcedores2 = ""


config.posTorcida1 = {x=337,y=1702,z=7, stackpos=1}

config.posTorcida2 = {x=349,y=1702,z=7, stackpos=1}


npcUid = nil


placar = { 0,0 }


else


doTeleportThing(jogador1, config.posTeleporte1)

doTeleportThing(jogador2, config.posTeleporte2)


doSendMagicEffect(config.posTeleporte1, 10)

doSendMagicEffect(config.posTeleporte2, 10)


doCreatureSetNoMove(jogador1, true)

doCreatureSetNoMove(jogador2, true)


doCreatureSetLookDirection(jogador1, 1)

doCreatureSetLookDirection(jogador2, 3)


doCreateItem(2109, 1, config.posBola)

doSendMagicEffect(config.posBola, 13)


local uids = string.explode(listaTorcedores1, ",")


for k = 1, #uids do

doCreatureSay(uids[k], "GOOOOL!", TALKTYPE_YELL)

end


placar[1] = placar[1]+1


local msg = "Gol do "..nome1.."! O placar atual é "..nome1..": "..placar[1].." e "..nome2..": "..placar[2].."."

addEvent(delayMsg,1000, msg)


msg = "A próxima rodada irá começar em cerca de "..config.tempoPrePartida.." segundos. Concentrem-se!"

addEvent(delayMsg,7000, msg)


addEvent(inicioJogo,8000+(config.tempoPrePartida*1000))

end


doRemoveItem(thing.uid)

end

end

end


eventoGol = addEvent(testeGol,100,nome1,nome2)

end


function onUse(cid, item, fromPosition, itemEx, toPosition)


if (isPlayer(jogador1) == true and isPlayer(jogador2) == true)then

doPlayerSendCancel(cid, "Lamento, mas o campo ja está em uso.")

doSendMagicEffect(fromPosition, 2)

return false

end


local coisa1 = getThingFromPos(config.posJogador1).uid

local coisa2 = getThingFromPos(config.posJogador2).uid


if(isPlayer(coisa1))then

jogador1 = coisa1

end


if(isPlayer(coisa2))then

jogador2 = coisa2

end


if(jogador1==nil or jogador2==nil)then

doPlayerSendCancel(cid, "Desculpe, mas você precisa de outro player para começar um jogo.")

doSendMagicEffect(fromPosition, 2)

return false

else

doTeleportThing(jogador1, config.posTeleporte1)

doTeleportThing(jogador2, config.posTeleporte2)


doSendMagicEffect(config.posTeleporte1, 10)

doSendMagicEffect(config.posTeleporte2, 10)


doCreatureSetNoMove(jogador1, true)

doCreatureSetNoMove(jogador2, true)


doCreatureSetLookDirection(jogador1, 1)

doCreatureSetLookDirection(jogador2, 3)


doCreateItem(2109, 1, config.posBola)

doSendMagicEffect(config.posBola, 13)


npcUid = doCreateNpc(config.nomeNpc, config.posNpc)

doCreatureSetLookDirection(npcUid, 2)

doSendMagicEffect(config.posNpc, 10)

doCreatureSetNoMove(npcUid, true)


local nome1 = getCreatureName(jogador1)

local nome2 = getCreatureName(jogador2)


local msg = "Saudações "..nome1.." e "..nome2..". Serei o juiz desta partida. Ganhará o primeiro a fazer "..config.gols.." gols."

addEvent(delayMsg,1000, msg)


msg = "A partida irá começar em cerca de "..config.tempoPrePartida.." segundos. Concentrem-se!"

addEvent(delayMsg,9000, msg)


local uidMonstro

local randomOutfit


for i=1,config.quantidadeTorcedores do

uidMonstro = doCreateMonster("Torcedor",config.posTorcida1)

doCreatureSetLookDirection(uidMonstro, 0)

doSendMagicEffect(config.posTorcida1, 10)

doCreatureSetNoMove(uidMonstro, true)


config.posTorcida1.x = config.posTorcida1.x + 1


randomOutfit = {

lookType = 128,

lookHead = math.random(1,66),

lookAddons = math.random(0,2),

lookLegs = math.random(1,66),

lookFeet = math.random(1,66)

}


doCreatureChangeOutfit(uidMonstro, randomOutfit)


if(listaTorcedores1=="")then

listaTorcedores1 = uidMonstro

else

listaTorcedores1 = listaTorcedores1..","..uidMonstro

end

end


for i=1,config.quantidadeTorcedores do

uidMonstro = doCreateMonster("Torcedor",config.posTorcida2)

doCreatureSetLookDirection(uidMonstro, 0)

doSendMagicEffect(config.posTorcida2, 10)

doCreatureSetNoMove(uidMonstro, true)


config.posTorcida2.x = config.posTorcida2.x + 1


randomOutfit = {

lookType = 128,

lookHead = math.random(67,132),

lookAddons = math.random(0,2),

lookLegs = math.random(67,132),

lookFeet = math.random(67,132)

}


doCreatureChangeOutfit(uidMonstro, randomOutfit)


if(listaTorcedores2=="")then

listaTorcedores2 = uidMonstro

else

listaTorcedores2 = listaTorcedores2..","..uidMonstro

end

end


addEvent(inicioJogo,10000+(config.tempoPrePartida*1000))

eventoTorcida = addEvent(torcida,10000+(config.tempoPrePartida*1000), nome1, nome2)

eventoGol = addEvent(testeGol,10000+(config.tempoPrePartida*1000), nome1, nome2)


local teste = string.explode(listaTorcedores1,",")


end


return true

end

Ficaria Muito Grato !!
Por Resolver este 2 Erros !!
Valendo Sempre +REP
Link to comment
Share on other sites

14 answers to this question

Recommended Posts

  • 0

Vc tá usando qual editor de texto pra salvar seu script?

Se tiver usando o bloco de notas, tente usar o Notepad++. E vice-versa.

Basicamente: utilize um editor de texto diferente para salvar o script.

 

 

#EDIT: na vdd, tinha um erro no 1° script, tinha um [/left] (wtf?!) no meio do script.

 

Tente usa-lo assim:

 

 

local focuses = {}

local function isFocused(cid)

for i, v in pairs(focuses) do

if(v == cid) then

return true

end

end

return false

end


local function addFocus(cid)

if(not isFocused(cid)) then

table.insert(focuses, cid)

end

end

local function removeFocus(cid)

for i, v in pairs(focuses) do

if(v == cid) then

table.remove(focuses, i)

break

end

end

end

local function lookAtFocus()

for i, v in pairs(focuses) do

if(isPlayer(v)) then

doNpcSetCreatureFocus(v)

return

end

end

doNpcSetCreatureFocus(0)

end

function onCreatureAppear(cid)

end

function onCreatureDisappear(cid)

if(isFocused(cid)) then

selfSay("Hmph!")

removeFocus(cid)

if(isPlayer(cid)) then --Be sure he's online

closeShopWindow(cid)

end

end

end

function onCreatureSay(cid, type, msg)

end

function onPlayerCloseChannel(cid)

if(isFocused(cid)) then

selfSay("Hmph!")

closeShopWindow(cid)

removeFocus(cid)

end

end

function onThink()

for i, focus in pairs(focuses) do

if(not isCreature(focus)) then

removeFocus(focus)

else

local distance = getDistanceTo(focus) or -1

if((distance > 4) or (distance == -1)) then

selfSay("Hmph!")

closeShopWindow(focus)

removeFocus(focus)

end

end

end

lookAtFocus()

end

 

 

Edited by Danihcv
Link to comment
Share on other sites

  • 0

Vc tá usando qual editor de texto pra salvar seu script?

Se tiver usando o bloco de notas, tente usar o Notepad++. E vice-versa.

Basicamente: utilize um editor de texto diferente para salvar o script.

 

 

#EDIT: na vdd, tinha um erro no 1° script, tinha um [/left] (wtf?!) no meio do script.

 

Tente usa-lo assim:

 

 

local focuses = {}

local function isFocused(cid)

for i, v in pairs(focuses) do

if(v == cid) then

return true

end

end

return false

end


local function addFocus(cid)

if(not isFocused(cid)) then

table.insert(focuses, cid)

end

end

local function removeFocus(cid)

for i, v in pairs(focuses) do

if(v == cid) then

table.remove(focuses, i)

break

end

end

end

local function lookAtFocus()

for i, v in pairs(focuses) do

if(isPlayer(v)) then

doNpcSetCreatureFocus(v)

return

end

end

doNpcSetCreatureFocus(0)

end

function onCreatureAppear(cid)

end

function onCreatureDisappear(cid)

if(isFocused(cid)) then

selfSay("Hmph!")

removeFocus(cid)

if(isPlayer(cid)) then --Be sure he's online

closeShopWindow(cid)

end

end

end

function onCreatureSay(cid, type, msg)

end

function onPlayerCloseChannel(cid)

if(isFocused(cid)) then

selfSay("Hmph!")

closeShopWindow(cid)

removeFocus(cid)

end

end

function onThink()

for i, focus in pairs(focuses) do

if(not isCreature(focus)) then

removeFocus(focus)

else

local distance = getDistanceTo(focus) or -1

if((distance > 4) or (distance == -1)) then

selfSay("Hmph!")

closeShopWindow(focus)

removeFocus(focus)

end

end

end

lookAtFocus()

end

 

 

Este Foi Resolvido Vlw

 

Agora falta o Ultimo

Link to comment
Share on other sites

  • 0

Tenta usar o 2° assim:

 

 

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

----- ### Sistema de Futebol ### -----

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

-- Feito por: zathao --

-- Msn: mayckon_bernardes@[member=Hotmail].com --

-- email: zathao@gmail.com --

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


-- Configurações Gerais

local config = {

-- Posição que o jogadores devem estar na hora de puxar a alavanca

posJogador1 = {x=345,y=1702,z=7, stackpos=1},

posJogador2 = {x=347,y=1702,z=7, stackpos=1},


-- Posição inicial dos jogadores na partida

posTeleporte1 = {x=344,y=1697,z=7, stackpos=1},

posTeleporte2 = {x=348,y=1697,z=7, stackpos=1},


posBola = {x=346,y=1697,z=7, stackpos=1}, -- Posição inicial da bola


nomeNpc = "Juiz", -- Lembrando que o npc deve existir

posNpc = {x=346,y=1692,z=7, stackpos=1}, -- Posição inicial do npc


gols = 5, -- Quantidade de gols para ganhar o jogo


tempoPrePartida = 5, -- Tempo de espera para começar a partida (segundos)


quantidadeTorcedores = 7, -- Para cada equipe


-- Posição inicial em que o script irá começar preencher com os torcedores

posTorcida1 = {x=337,y=1702,z=7, stackpos=1},

posTorcida2 = {x=349,y=1702,z=7, stackpos=1},


-- Posição dos gols

posGol1 = {

{x=337,y=1696,z=7, stackpos=1},

{x=337,y=1697,z=7, stackpos=1},

{x=337,y=1698,z=7, stackpos=1}

},

posGol2 = {

{x=335,y=1696,z=7, stackpos=1},

{x=335,y=1697,z=7, stackpos=1},

{x=335,y=1698,z=7, stackpos=1}

}

}


local jogador1 = nil

local jogador2 = nil


local listaTorcedores1 = ""

local listaTorcedores2 = ""


local npcUid = nil


local placar = { 0,0 }


local eventoTorcida = nil

local eventoGol = nil


local function inicioJogo()

doCreatureSay(npcUid, "Valendo!", TALKTYPE_YELL)


doSendMagicEffect(config.posTeleporte1, 12)

doSendMagicEffect(config.posTeleporte2, 12)


doCreatureSetNoMove(jogador1, false)

doCreatureSetNoMove(jogador2, false)


end


local function torcida(nome1, nome2)

local chanceTorcida1 = math.random(1,2)

local chanceTorcida2 = math.random(1,2)


if(chanceTorcida1>1)then

local uids = string.explode(listaTorcedores1, ",")

local torcedor = uids[math.random(1,#uids)]

doCreatureSay(torcedor, "Vai "..nome1.."!", TALKTYPE_YELL)

end


if(chanceTorcida2>1)then

local uids = string.explode(listaTorcedores2, ",")

local torcedor = uids[math.random(1,#uids)]

doCreatureSay(torcedor, "Vai "..nome2.."!", TALKTYPE_YELL)

end


eventoTorcida = addEvent(torcida,4000, nome1, nome2)

end


local function delayMsg(msg)

doCreatureSay(npcUid, msg, TALKTYPE_YELL)

end


local function testeGol(nome1,nome2)

for i=1,#config.posGol1 do

for j=1,10 do

local testPos = {x=config.posGol1[i].x, y=config.posGol1[i].y, z=config.posGol1[i].z, stackpos=j}

local thing = getThingFromPos(testPos)


if(thing.itemid==2109)then

if(placar[2]==config.gols-1)then

doPlayerSendTextMessage(jogador2, MESSAGE_INFO_DESCR, "Parabéns! Você ganhou a partida.")

doPlayerSendTextMessage(jogador1, MESSAGE_INFO_DESCR, "Lamento, mas você perdeu o jogo.")


doTeleportThing(jogador1, config.posJogador1)

doTeleportThing(jogador2, config.posJogador2)


doSendMagicEffect(config.posJogador1, 12)

doSendMagicEffect(config.posJogador2, 12)


local item = doPlayerAddItem(jogador2, 5805)

doItemSetAttribute(item, "description", nome2.." conquistou este troféu apos derrotar "..nome1.." em uma partida de futebol.")


doRemoveCreature(npcUid)


stopEvent(eventoTorcida)

stopEvent(eventoGol)


local uids1 = string.explode(listaTorcedores1, ",")

local uids2 = string.explode(listaTorcedores2, ",")


for k = 1, #uids1 do

doRemoveCreature(uids1[k])

doRemoveCreature(uids2[k])

end


jogador1 = nil

jogador2 = nil


listaTorcedores1 = ""

listaTorcedores2 = ""


config.posTorcida1 = {x=76,y=165,z=7, stackpos=1}

config.posTorcida2 = {x=84,y=165,z=7, stackpos=1}


npcUid = nil


placar = { 0,0 }


else


doTeleportThing(jogador1, config.posTeleporte1)

doTeleportThing(jogador2, config.posTeleporte2)


doSendMagicEffect(config.posTeleporte1, 10)

doSendMagicEffect(config.posTeleporte2, 10)


doCreatureSetNoMove(jogador1, true)

doCreatureSetNoMove(jogador2, true)


doCreatureSetLookDirection(jogador1, 1)

doCreatureSetLookDirection(jogador2, 3)


doCreateItem(2109, 1, config.posBola)

doSendMagicEffect(config.posBola, 13)


local uids = string.explode(listaTorcedores2, ",")


for k = 1, #uids do

doCreatureSay(uids[k], "GOOOOL!", TALKTYPE_YELL)

end


placar[2] = placar[2]+1


local msg = "Gol do "..nome2.."! O placar atual é "..nome1..": "..placar[1].." e "..nome2..": "..placar[2].."."

addEvent(delayMsg,1000, msg)


msg = "A próxima rodada irá começar em cerca de "..config.tempoPrePartida.." segundos. Concentrem-se!"

addEvent(delayMsg,6000, msg)


addEvent(inicioJogo,7000+(config.tempoPrePartida*1000))

end


doRemoveItem(thing.uid)

end

end

end


for i=1,#config.posGol2 do

for j=1,10 do

local testPos = {x=config.posGol2[i].x, y=config.posGol2[i].y, z=config.posGol2[i].z, stackpos=j}

local thing = getThingFromPos(testPos)


if(thing.itemid==2109)then

if(placar[1]==config.gols-1)then

doPlayerSendTextMessage(jogador1, MESSAGE_INFO_DESCR, "Parabéns! Você ganhou a partida.")

doPlayerSendTextMessage(jogador2, MESSAGE_INFO_DESCR, "Lamento, mas você perdeu o jogo.")


doTeleportThing(jogador1, config.posJogador1)

doTeleportThing(jogador2, config.posJogador2)


doSendMagicEffect(config.posJogador1, 12)

doSendMagicEffect(config.posJogador2, 12)


local item = doPlayerAddItem(jogador1, 5805)

doItemSetAttribute(item, "description", nome1.." conquistou este troféu apos derrotar "..nome2.." em uma partida de futebol.")


doRemoveCreature(npcUid)


stopEvent(eventoTorcida)

stopEvent(eventoGol)


local uids1 = string.explode(listaTorcedores1, ",")

local uids2 = string.explode(listaTorcedores2, ",")


for k = 1, #uids1 do

doRemoveCreature(uids1[k])

doRemoveCreature(uids2[k])

end


jogador1 = nil

jogador2 = nil


listaTorcedores1 = ""

listaTorcedores2 = ""


config.posTorcida1 = {x=337,y=1702,z=7, stackpos=1}

config.posTorcida2 = {x=349,y=1702,z=7, stackpos=1}


npcUid = nil


placar = { 0,0 }


else


doTeleportThing(jogador1, config.posTeleporte1)

doTeleportThing(jogador2, config.posTeleporte2)


doSendMagicEffect(config.posTeleporte1, 10)

doSendMagicEffect(config.posTeleporte2, 10)


doCreatureSetNoMove(jogador1, true)

doCreatureSetNoMove(jogador2, true)


doCreatureSetLookDirection(jogador1, 1)

doCreatureSetLookDirection(jogador2, 3)


doCreateItem(2109, 1, config.posBola)

doSendMagicEffect(config.posBola, 13)


local uids = string.explode(listaTorcedores1, ",")


for k = 1, #uids do

doCreatureSay(uids[k], "GOOOOL!", TALKTYPE_YELL)

end


placar[1] = placar[1]+1


local msg = "Gol do "..nome1.."! O placar atual é "..nome1..": "..placar[1].." e "..nome2..": "..placar[2].."."

addEvent(delayMsg,1000, msg)


msg = "A próxima rodada irá começar em cerca de "..config.tempoPrePartida.." segundos. Concentrem-se!"

addEvent(delayMsg,7000, msg)


addEvent(inicioJogo,8000+(config.tempoPrePartida*1000))

end


doRemoveItem(thing.uid)

end

end

end


eventoGol = addEvent(testeGol,100,nome1,nome2)

end


function onUse(cid, item, fromPosition, itemEx, toPosition)


if (isPlayer(jogador1) == true and isPlayer(jogador2) == true)then

doPlayerSendCancel(cid, "Lamento, mas o campo ja está em uso.")

doSendMagicEffect(fromPosition, 2)

return false

end


local coisa1 = getThingFromPos(config.posJogador1).uid

local coisa2 = getThingFromPos(config.posJogador2).uid


if(isPlayer(coisa1))then

jogador1 = coisa1

end


if(isPlayer(coisa2))then

jogador2 = coisa2

end


if(jogador1==nil or jogador2==nil)then

doPlayerSendCancel(cid, "Desculpe, mas você precisa de outro player para começar um jogo.")

doSendMagicEffect(fromPosition, 2)

return false

else

doTeleportThing(jogador1, config.posTeleporte1)

doTeleportThing(jogador2, config.posTeleporte2)


doSendMagicEffect(config.posTeleporte1, 10)

doSendMagicEffect(config.posTeleporte2, 10)


doCreatureSetNoMove(jogador1, true)

doCreatureSetNoMove(jogador2, true)


doCreatureSetLookDirection(jogador1, 1)

doCreatureSetLookDirection(jogador2, 3)


doCreateItem(2109, 1, config.posBola)

doSendMagicEffect(config.posBola, 13)


npcUid = doCreateNpc(config.nomeNpc, config.posNpc)

doCreatureSetLookDirection(npcUid, 2)

doSendMagicEffect(config.posNpc, 10)

doCreatureSetNoMove(npcUid, true)


local nome1 = getCreatureName(jogador1)

local nome2 = getCreatureName(jogador2)


local msg = "Saudações "..nome1.." e "..nome2..". Serei o juiz desta partida. Ganhará o primeiro a fazer "..config.gols.." gols."

addEvent(delayMsg,1000, msg)


msg = "A partida irá começar em cerca de "..config.tempoPrePartida.." segundos. Concentrem-se!"

addEvent(delayMsg,9000, msg)


for i=1,config.quantidadeTorcedores do

uidMonstro = doCreateMonster("Torcedor",config.posTorcida1)

doCreatureSetLookDirection(uidMonstro, 0)

doSendMagicEffect(config.posTorcida1, 10)

doCreatureSetNoMove(uidMonstro, true)


config.posTorcida1.x = config.posTorcida1.x + 1


randomOutfit = {

lookType = 128,

lookHead = math.random(1,66),

lookAddons = math.random(0,2),

lookLegs = math.random(1,66),

lookFeet = math.random(1,66)

}


doCreatureChangeOutfit(uidMonstro, randomOutfit)


if(listaTorcedores1=="")then

listaTorcedores1 = uidMonstro

else

listaTorcedores1 = listaTorcedores1..","..uidMonstro

end

end


for i=1,config.quantidadeTorcedores do

uidMonstro = doCreateMonster("Torcedor",config.posTorcida2)

doCreatureSetLookDirection(uidMonstro, 0)

doSendMagicEffect(config.posTorcida2, 10)

doCreatureSetNoMove(uidMonstro, true)


config.posTorcida2.x = config.posTorcida2.x + 1


randomOutfit = {

lookType = 128,

lookHead = math.random(67,132),

lookAddons = math.random(0,2),

lookLegs = math.random(67,132),

lookFeet = math.random(67,132)

}


doCreatureChangeOutfit(uidMonstro, randomOutfit)


if(listaTorcedores2=="")then

listaTorcedores2 = uidMonstro

else

listaTorcedores2 = listaTorcedores2..","..uidMonstro

end

end


addEvent(inicioJogo,10000+(config.tempoPrePartida*1000))

eventoTorcida = addEvent(torcida,10000+(config.tempoPrePartida*1000), nome1, nome2)

eventoGol = addEvent(testeGol,10000+(config.tempoPrePartida*1000), nome1, nome2)


local teste = string.explode(listaTorcedores1,",")


end


return true

end

 

 

Link to comment
Share on other sites

  • 0

Tenta usar o 2° assim:

 

 

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

----- ### Sistema de Futebol ### -----

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

-- Feito por: zathao --

-- Msn: mayckon_bernardes@[member='Hotmail'].com --

-- email: [email protected]<script data-cfhash='f9e31' type="text/javascript">
/*  */</script> --

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


-- Configurações Gerais

local config = {

-- Posição que o jogadores devem estar na hora de puxar a alavanca

posJogador1 = {x=345,y=1702,z=7, stackpos=1},

posJogador2 = {x=347,y=1702,z=7, stackpos=1},


-- Posição inicial dos jogadores na partida

posTeleporte1 = {x=344,y=1697,z=7, stackpos=1},

posTeleporte2 = {x=348,y=1697,z=7, stackpos=1},


posBola = {x=346,y=1697,z=7, stackpos=1}, -- Posição inicial da bola


nomeNpc = "Juiz", -- Lembrando que o npc deve existir

posNpc = {x=346,y=1692,z=7, stackpos=1}, -- Posição inicial do npc


gols = 5, -- Quantidade de gols para ganhar o jogo


tempoPrePartida = 5, -- Tempo de espera para começar a partida (segundos)


quantidadeTorcedores = 7, -- Para cada equipe


-- Posição inicial em que o script irá começar preencher com os torcedores

posTorcida1 = {x=337,y=1702,z=7, stackpos=1},

posTorcida2 = {x=349,y=1702,z=7, stackpos=1},


-- Posição dos gols

posGol1 = {

{x=337,y=1696,z=7, stackpos=1},

{x=337,y=1697,z=7, stackpos=1},

{x=337,y=1698,z=7, stackpos=1}

},

posGol2 = {

{x=335,y=1696,z=7, stackpos=1},

{x=335,y=1697,z=7, stackpos=1},

{x=335,y=1698,z=7, stackpos=1}

}

}


local jogador1 = nil

local jogador2 = nil


local listaTorcedores1 = ""

local listaTorcedores2 = ""


local npcUid = nil


local placar = { 0,0 }


local eventoTorcida = nil

local eventoGol = nil


local function inicioJogo()

doCreatureSay(npcUid, "Valendo!", TALKTYPE_YELL)


doSendMagicEffect(config.posTeleporte1, 12)

doSendMagicEffect(config.posTeleporte2, 12)


doCreatureSetNoMove(jogador1, false)

doCreatureSetNoMove(jogador2, false)


end


local function torcida(nome1, nome2)

local chanceTorcida1 = math.random(1,2)

local chanceTorcida2 = math.random(1,2)


if(chanceTorcida1>1)then

local uids = string.explode(listaTorcedores1, ",")

local torcedor = uids[math.random(1,#uids)]

doCreatureSay(torcedor, "Vai "..nome1.."!", TALKTYPE_YELL)

end


if(chanceTorcida2>1)then

local uids = string.explode(listaTorcedores2, ",")

local torcedor = uids[math.random(1,#uids)]

doCreatureSay(torcedor, "Vai "..nome2.."!", TALKTYPE_YELL)

end


eventoTorcida = addEvent(torcida,4000, nome1, nome2)

end


local function delayMsg(msg)

doCreatureSay(npcUid, msg, TALKTYPE_YELL)

end


local function testeGol(nome1,nome2)

for i=1,#config.posGol1 do

for j=1,10 do

local testPos = {x=config.posGol1[i].x, y=config.posGol1[i].y, z=config.posGol1[i].z, stackpos=j}

local thing = getThingFromPos(testPos)


if(thing.itemid==2109)then

if(placar[2]==config.gols-1)then

doPlayerSendTextMessage(jogador2, MESSAGE_INFO_DESCR, "Parabéns! Você ganhou a partida.")

doPlayerSendTextMessage(jogador1, MESSAGE_INFO_DESCR, "Lamento, mas você perdeu o jogo.")


doTeleportThing(jogador1, config.posJogador1)

doTeleportThing(jogador2, config.posJogador2)


doSendMagicEffect(config.posJogador1, 12)

doSendMagicEffect(config.posJogador2, 12)


local item = doPlayerAddItem(jogador2, 5805)

doItemSetAttribute(item, "description", nome2.." conquistou este troféu apos derrotar "..nome1.." em uma partida de futebol.")


doRemoveCreature(npcUid)


stopEvent(eventoTorcida)

stopEvent(eventoGol)


local uids1 = string.explode(listaTorcedores1, ",")

local uids2 = string.explode(listaTorcedores2, ",")


for k = 1, #uids1 do

doRemoveCreature(uids1[k])

doRemoveCreature(uids2[k])

end


jogador1 = nil

jogador2 = nil


listaTorcedores1 = ""

listaTorcedores2 = ""


config.posTorcida1 = {x=76,y=165,z=7, stackpos=1}

config.posTorcida2 = {x=84,y=165,z=7, stackpos=1}


npcUid = nil


placar = { 0,0 }


else


doTeleportThing(jogador1, config.posTeleporte1)

doTeleportThing(jogador2, config.posTeleporte2)


doSendMagicEffect(config.posTeleporte1, 10)

doSendMagicEffect(config.posTeleporte2, 10)


doCreatureSetNoMove(jogador1, true)

doCreatureSetNoMove(jogador2, true)


doCreatureSetLookDirection(jogador1, 1)

doCreatureSetLookDirection(jogador2, 3)


doCreateItem(2109, 1, config.posBola)

doSendMagicEffect(config.posBola, 13)


local uids = string.explode(listaTorcedores2, ",")


for k = 1, #uids do

doCreatureSay(uids[k], "GOOOOL!", TALKTYPE_YELL)

end


placar[2] = placar[2]+1


local msg = "Gol do "..nome2.."! O placar atual é "..nome1..": "..placar[1].." e "..nome2..": "..placar[2].."."

addEvent(delayMsg,1000, msg)


msg = "A próxima rodada irá começar em cerca de "..config.tempoPrePartida.." segundos. Concentrem-se!"

addEvent(delayMsg,6000, msg)


addEvent(inicioJogo,7000+(config.tempoPrePartida*1000))

end


doRemoveItem(thing.uid)

end

end

end


for i=1,#config.posGol2 do

for j=1,10 do

local testPos = {x=config.posGol2[i].x, y=config.posGol2[i].y, z=config.posGol2[i].z, stackpos=j}

local thing = getThingFromPos(testPos)


if(thing.itemid==2109)then

if(placar[1]==config.gols-1)then

doPlayerSendTextMessage(jogador1, MESSAGE_INFO_DESCR, "Parabéns! Você ganhou a partida.")

doPlayerSendTextMessage(jogador2, MESSAGE_INFO_DESCR, "Lamento, mas você perdeu o jogo.")


doTeleportThing(jogador1, config.posJogador1)

doTeleportThing(jogador2, config.posJogador2)


doSendMagicEffect(config.posJogador1, 12)

doSendMagicEffect(config.posJogador2, 12)


local item = doPlayerAddItem(jogador1, 5805)

doItemSetAttribute(item, "description", nome1.." conquistou este troféu apos derrotar "..nome2.." em uma partida de futebol.")


doRemoveCreature(npcUid)


stopEvent(eventoTorcida)

stopEvent(eventoGol)


local uids1 = string.explode(listaTorcedores1, ",")

local uids2 = string.explode(listaTorcedores2, ",")


for k = 1, #uids1 do

doRemoveCreature(uids1[k])

doRemoveCreature(uids2[k])

end


jogador1 = nil

jogador2 = nil


listaTorcedores1 = ""

listaTorcedores2 = ""


config.posTorcida1 = {x=337,y=1702,z=7, stackpos=1}

config.posTorcida2 = {x=349,y=1702,z=7, stackpos=1}


npcUid = nil


placar = { 0,0 }


else


doTeleportThing(jogador1, config.posTeleporte1)

doTeleportThing(jogador2, config.posTeleporte2)


doSendMagicEffect(config.posTeleporte1, 10)

doSendMagicEffect(config.posTeleporte2, 10)


doCreatureSetNoMove(jogador1, true)

doCreatureSetNoMove(jogador2, true)


doCreatureSetLookDirection(jogador1, 1)

doCreatureSetLookDirection(jogador2, 3)


doCreateItem(2109, 1, config.posBola)

doSendMagicEffect(config.posBola, 13)


local uids = string.explode(listaTorcedores1, ",")


for k = 1, #uids do

doCreatureSay(uids[k], "GOOOOL!", TALKTYPE_YELL)

end


placar[1] = placar[1]+1


local msg = "Gol do "..nome1.."! O placar atual é "..nome1..": "..placar[1].." e "..nome2..": "..placar[2].."."

addEvent(delayMsg,1000, msg)


msg = "A próxima rodada irá começar em cerca de "..config.tempoPrePartida.." segundos. Concentrem-se!"

addEvent(delayMsg,7000, msg)


addEvent(inicioJogo,8000+(config.tempoPrePartida*1000))

end


doRemoveItem(thing.uid)

end

end

end


eventoGol = addEvent(testeGol,100,nome1,nome2)

end


function onUse(cid, item, fromPosition, itemEx, toPosition)


if (isPlayer(jogador1) == true and isPlayer(jogador2) == true)then

doPlayerSendCancel(cid, "Lamento, mas o campo ja está em uso.")

doSendMagicEffect(fromPosition, 2)

return false

end


local coisa1 = getThingFromPos(config.posJogador1).uid

local coisa2 = getThingFromPos(config.posJogador2).uid


if(isPlayer(coisa1))then

jogador1 = coisa1

end


if(isPlayer(coisa2))then

jogador2 = coisa2

end


if(jogador1==nil or jogador2==nil)then

doPlayerSendCancel(cid, "Desculpe, mas você precisa de outro player para começar um jogo.")

doSendMagicEffect(fromPosition, 2)

return false

else

doTeleportThing(jogador1, config.posTeleporte1)

doTeleportThing(jogador2, config.posTeleporte2)


doSendMagicEffect(config.posTeleporte1, 10)

doSendMagicEffect(config.posTeleporte2, 10)


doCreatureSetNoMove(jogador1, true)

doCreatureSetNoMove(jogador2, true)


doCreatureSetLookDirection(jogador1, 1)

doCreatureSetLookDirection(jogador2, 3)


doCreateItem(2109, 1, config.posBola)

doSendMagicEffect(config.posBola, 13)


npcUid = doCreateNpc(config.nomeNpc, config.posNpc)

doCreatureSetLookDirection(npcUid, 2)

doSendMagicEffect(config.posNpc, 10)

doCreatureSetNoMove(npcUid, true)


local nome1 = getCreatureName(jogador1)

local nome2 = getCreatureName(jogador2)


local msg = "Saudações "..nome1.." e "..nome2..". Serei o juiz desta partida. Ganhará o primeiro a fazer "..config.gols.." gols."

addEvent(delayMsg,1000, msg)


msg = "A partida irá começar em cerca de "..config.tempoPrePartida.." segundos. Concentrem-se!"

addEvent(delayMsg,9000, msg)


for i=1,config.quantidadeTorcedores do

uidMonstro = doCreateMonster("Torcedor",config.posTorcida1)

doCreatureSetLookDirection(uidMonstro, 0)

doSendMagicEffect(config.posTorcida1, 10)

doCreatureSetNoMove(uidMonstro, true)


config.posTorcida1.x = config.posTorcida1.x + 1


randomOutfit = {

lookType = 128,

lookHead = math.random(1,66),

lookAddons = math.random(0,2),

lookLegs = math.random(1,66),

lookFeet = math.random(1,66)

}


doCreatureChangeOutfit(uidMonstro, randomOutfit)


if(listaTorcedores1=="")then

listaTorcedores1 = uidMonstro

else

listaTorcedores1 = listaTorcedores1..","..uidMonstro

end

end


for i=1,config.quantidadeTorcedores do

uidMonstro = doCreateMonster("Torcedor",config.posTorcida2)

doCreatureSetLookDirection(uidMonstro, 0)

doSendMagicEffect(config.posTorcida2, 10)

doCreatureSetNoMove(uidMonstro, true)


config.posTorcida2.x = config.posTorcida2.x + 1


randomOutfit = {

lookType = 128,

lookHead = math.random(67,132),

lookAddons = math.random(0,2),

lookLegs = math.random(67,132),

lookFeet = math.random(67,132)

}


doCreatureChangeOutfit(uidMonstro, randomOutfit)


if(listaTorcedores2=="")then

listaTorcedores2 = uidMonstro

else

listaTorcedores2 = listaTorcedores2..","..uidMonstro

end

end


addEvent(inicioJogo,10000+(config.tempoPrePartida*1000))

eventoTorcida = addEvent(torcida,10000+(config.tempoPrePartida*1000), nome1, nome2)

eventoGol = addEvent(testeGol,10000+(config.tempoPrePartida*1000), nome1, nome2)


local teste = string.explode(listaTorcedores1,",")


end


return true

end

 

 

Ainda Continua,

Olha este Erros Que Parece na Distro

 

[11/1/2016 23:15:41] [Error - Action Interface]

[11/1/2016 23:15:41] data/actions/scripts/futebol.lua:onUse

[11/1/2016 23:15:41] Description:

[11/1/2016 23:15:41] (LuaInterface::luaDoCreateMonster) Cannot create monster: Torcedor

 

[11/1/2016 23:15:41] [Error - Action Interface]

[11/1/2016 23:15:41] data/actions/scripts/futebol.lua:onUse

[11/1/2016 23:15:41] Description:

[11/1/2016 23:15:41] (LuaInterface::luaDoCreatureSetLookDir) Creature not found

 

[11/1/2016 23:15:41] [Error - Action Interface]

[11/1/2016 23:15:41] data/actions/scripts/futebol.lua:onUse

[11/1/2016 23:15:41] Description:

[11/1/2016 23:15:41] (LuaInterface::luaDoCreatureSetNoMove) Creature not found

 

[11/1/2016 23:15:41] [Error - Action Interface]

[11/1/2016 23:15:41] data/actions/scripts/futebol.lua:onUse

[11/1/2016 23:15:41] Description:

[11/1/2016 23:15:41] (LuaInterface::luaDoCreatureChangeOutfit) Creature not found

 

[11/1/2016 23:15:41] [Error - Action Interface]

[11/1/2016 23:15:41] data/actions/scripts/futebol.lua:onUse

[11/1/2016 23:15:41] Description:

[11/1/2016 23:15:41] (LuaInterface::luaDoCreateMonster) Cannot create monster: Torcedor

 

[11/1/2016 23:15:41] [Error - Action Interface]

[11/1/2016 23:15:41] data/actions/scripts/futebol.lua:onUse

[11/1/2016 23:15:41] Description:

[11/1/2016 23:15:41] (LuaInterface::luaDoCreatureSetLookDir) Creature not found

 

[11/1/2016 23:15:41] [Error - Action Interface]

[11/1/2016 23:15:41] data/actions/scripts/futebol.lua:onUse

[11/1/2016 23:15:42] Description:

[11/1/2016 23:15:42] (LuaInterface::luaDoCreatureSetNoMove) Creature not found

 

[11/1/2016 23:15:42] [Error - Action Interface]

[11/1/2016 23:15:42] data/actions/scripts/futebol.lua:onUse

[11/1/2016 23:15:42] Description:

[11/1/2016 23:15:42] (LuaInterface::luaDoCreatureChangeOutfit) Creature not found

 

[11/1/2016 23:15:42] [Error - Action Interface]

[11/1/2016 23:15:42] data/actions/scripts/futebol.lua:onUse

[11/1/2016 23:15:42] Description:

[11/1/2016 23:15:42] data/actions/scripts/futebol.lua:582: attempt to concatenate global 'uidMonstro' (a boolean value)

[11/1/2016 23:15:42] stack traceback:

[11/1/2016 23:15:42] data/actions/scripts/futebol.lua:582: in function

 

Link to comment
Share on other sites

  • 0

O script que eu mandei deu uma bugada. E mesmo assim, o q eu modifiquei, acabou sendo um erro, então ignore o que eu mandei.

 

Agora minha pergunta: vc criou um monstro chamado Torcedor em seu server? Pq creio que o problema seja a inexistência de um monstro chamado Torcedor nos arquivos do servidor. (mais especificamente dentro da pasta monster)

Link to comment
Share on other sites

  • 0

O script que eu mandei deu uma bugada. E mesmo assim, o q eu modifiquei, acabou sendo um erro, então ignore o que eu mandei.

 

Agora minha pergunta: vc criou um monstro chamado Torcedor em seu server? Pq creio que o problema seja a inexistência de um monstro chamado Torcedor nos arquivos do servidor. (mais especificamente dentro da pasta monster)

Sim,Porem acho Que ele esta Bugado,Vo te passar o Script para vc dar uma olhada

No Spoiler ele nao abre entao vo upar

http://www.4shared.com/document/MkHq4zqece/torcedor.html

Link to comment
Share on other sites

×
×
  • Create New...