Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Com certeza não. Só você olhar o que o console está apontando. Ou então você printou o erro pela metade, e cortou a foto, não sei pra que, vergonha de mostra o pc ? Vergonha de mostra a distro ?

Posta a foto do erro todo ae, completa. E posta o seu movements. 

Se não é esse o erro qual seria ? Se já resolveu porque deu up ?

 

                                                              ezgif-1-98aab239f3.gif.1a897c9c3225228909e7b356a5cfb8e4.gif

Link para o post
Compartilhar em outros sites
  • Respostas 50
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Olá amigos, membros, visitantes, papagaios, enfim... Depois de muito me pedirem o evento SNOWBAL WAR EVENT, trago ele 100% pra vocês. Como funciona? Os jogadores irão se divertir em uma emociona

Testa esse aqui. O meu estava dando o mesmo erro, fui la e configurei uma linha, mais nao me recordo qual! kkkkk, ja faz um tempinho que modifiquei. Testa esse e me fala se funcionou.    

Qual versão do TFS? Se for 0.4 abre o arquivo e mude onTimer para onTime

Posted Images

cara tudo funciona normal quando o evento começa o player nao teleporta para o mapa de neve.. fica na area de espera.. oque pode ser? uso TFS 0.4

Segue o erro no distro.

Spoiler

[19:3:00.869] [Error - GlobalEvent Interface]
[19:3:00.872] In a timer event called from:
[19:3:00.875] data/globalevents/scripts/events/snowballglobalevent.lua:onTime
[19:3:00.878] Description:
[19:3:00.880] .../globalevents/scripts/events/snowballglobalevent.lua:58: attempt to call global 'Position' (a nil value)
[19:3:00.884] stack traceback:
[19:3:00.885]   .../globalevents/scripts/events/snowballglobalevent.lua:58: in function <.../globalevents/scripts/events/snowballglobalevent.lua:52>

 

Link para o post
Compartilhar em outros sites
  • 2 weeks later...

Como usar em SQLITE?  Consegui alterar pra SQLITE.

 

-- Estou agora com um pequeno erro, quando entro no evento ele não avisa quem entrou. Já tentei editar o globalevents na parte do SetItemAttribute e não funcionou.

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

Senhoras e senhores, se alguma resposta lhe ajudou, marque-a como a melhor resposta e de ponto positivo, assim você incentiva quem lhe ajudou a continuar ajudando!!.

Link para o post
Compartilhar em outros sites
  • 3 weeks later...
Em 08/02/2017 ás 19:10, patrick323 disse:

cara tudo funciona normal quando o evento começa o player nao teleporta para o mapa de neve.. fica na area de espera.. oque pode ser? uso TFS 0.4

Segue o erro no distro.

  Ocultar conteúdo

[19:3:00.869] [Error - GlobalEvent Interface]
[19:3:00.872] In a timer event called from:
[19:3:00.875] data/globalevents/scripts/events/snowballglobalevent.lua:onTime
[19:3:00.878] Description:
[19:3:00.880] .../globalevents/scripts/events/snowballglobalevent.lua:58: attempt to call global 'Position' (a nil value)
[19:3:00.884] stack traceback:
[19:3:00.885]   .../globalevents/scripts/events/snowballglobalevent.lua:58: in function <.../globalevents/scripts/events/snowballglobalevent.lua:52>

 

 

to com o mesmo erro =x help?

Link para o post
Compartilhar em outros sites
  • 2 weeks later...
Em 08/02/2017 ás 18:10, patrick323 disse:

cara tudo funciona normal quando o evento começa o player nao teleporta para o mapa de neve.. fica na area de espera.. oque pode ser? uso TFS 0.4

Segue o erro no distro.

  Ocultar conteúdo

[19:3:00.869] [Error - GlobalEvent Interface]
[19:3:00.872] In a timer event called from:
[19:3:00.875] data/globalevents/scripts/events/snowballglobalevent.lua:onTime
[19:3:00.878] Description:
[19:3:00.880] .../globalevents/scripts/events/snowballglobalevent.lua:58: attempt to call global 'Position' (a nil value)
[19:3:00.884] stack traceback:
[19:3:00.885]   .../globalevents/scripts/events/snowballglobalevent.lua:58: in function <.../globalevents/scripts/events/snowballglobalevent.lua:52>

 

uso TFS 0.4 mesmo erro aqui HELP!

Link para o post
Compartilhar em outros sites
Em 22/02/2017 ás 02:03, tetheuscunha disse:

Como usar em SQLITE?  Consegui alterar pra SQLITE.

 

-- Estou agora com um pequeno erro, quando entro no evento ele não avisa quem entrou. Já tentei editar o globalevents na parte do SetItemAttribute e não funcionou.

 

Eu consigo rodar em SQLITE?

 

Outra coisa, está dando essa mensagem ao abrir o OT: 


[22/03/2017 21:58:07] [Warning - Event::loadScript] Event onTimer not found (data/globalevents/scripts/snowballglobalevent.lua)

Oque pode ser?

Editado por davidguimaraesdrum (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
2 horas atrás, davidguimaraesdrum disse:

 

Eu consigo rodar em SQLITE?

 

Outra coisa, está dando essa mensagem ao abrir o OT: 


[22/03/2017 21:58:07] [Warning - Event::loadScript] Event onTimer not found (data/globalevents/scripts/snowballglobalevent.lua)

Oque pode ser?

Qual versão do TFS? Se for 0.4 abre o arquivo e mude onTimer para onTime

Senhoras e senhores, se alguma resposta lhe ajudou, marque-a como a melhor resposta e de ponto positivo, assim você incentiva quem lhe ajudou a continuar ajudando!!.

Link para o post
Compartilhar em outros sites
3 minutos atrás, tetheuscunha disse:

Qual versão do TFS? Se for 0.4 abre o arquivo e mude onTimer para onTime

 

Consegui, muito obrigado!

 

Queria saber se é possível executar o SQL pelo SQLITE ;/

Link para o post
Compartilhar em outros sites
2 minutos atrás, davidguimaraesdrum disse:

 

Consegui, muito obrigado!

 

Queria saber se é possível executar o SQL pelo SQLITE ;/

Eu estou usando ele SQLITE

Senhoras e senhores, se alguma resposta lhe ajudou, marque-a como a melhor resposta e de ponto positivo, assim você incentiva quem lhe ajudou a continuar ajudando!!.

Link para o post
Compartilhar em outros sites
38 minutos atrás, tetheuscunha disse:

Eu estou usando ele SQLITE

 

Pode me auxiliar? eu não sei como executar esses comandos pelo SQLITE:

 

Spoiler

 

E por fim, vá até o seu banco de dados (phpmyadmin) e insira a seguinte query:

CREATE TABLE IF NOT EXISTS `snowballwar` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `score` int(11) NOT NULL, `data` varchar(255) NOT NULL, `hora` varchar(255) NOT NULL, PRIMARY KEY (`id`), KEY `id` (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

 

Ainda no phpmyadmin execute:

ALTER TABLE `players` ADD `sbw_points` int(11);

 

 

Editado por davidguimaraesdrum (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
Em 08/02/2017 ás 19:10, patrick323 disse:

cara tudo funciona normal quando o evento começa o player nao teleporta para o mapa de neve.. fica na area de espera..

 

Mesmo problema.

Link para o post
Compartilhar em outros sites

 

 

4 horas atrás, Nox disse:

Mesmo problema.

 

Testa esse aqui. O meu estava dando o mesmo erro, fui la e configurei uma linha, mais nao me recordo qual! kkkkk, ja faz um tempinho que modifiquei. Testa esse e me fala se funcionou.

 

function onTime()
                
function isInWallArray(pos)
    for k = 0, table.getn(SBW_WALLSID) do
        if (getTileItemById(pos, SBW_WALLSID[k]).itemid == SBW_WALLSID[k]) then
            return true    
        end    
    end
 return false
end

               
function endsnowball()
    local score = {}
    if not SBW_USEWAIT then
        doRemoveItem(getTileItemById(SBW_TP, 1387).uid)
    end
    for _, pid in ipairs(getPlayersOnline()) do
        if getPlayerStorageValue(pid, SBW_INEVENT) > 0 then
            table.insert(score, {getCreatureName(pid), getPlayerStorageValue(pid, SBW_SCORE)})
            doPlayerSetStorageValue(pid, SBW_INEVENT, 0)
            doPlayerSetStorageValue(pid, SBW_SCORE, 0)
            doPlayerSetStorageValue(pid, SBW_AMMO, 0)
            doTeleportThing(pid, SBW_TPEND)
        end
    end
    table.sort(score, function(a, b) return a[2] > b[2] end)
    --local random_item = SBW_REWARDS[math.random(1, #SBW_REWARDS)]
    local hora = os.date("%X")
    local data = os.date("%x")    
    if table.getn(score) > 0 then
        if SBW_ADDREWARD then
            for _, pid in ipairs(getPlayersOnline()) do
                if getCreatureName(pid) == score[1][1] then
                    for op,ad in pairs(SBW_REWARDS) do
                        doPlayerAddItem(pid, ad[1], ad[2])
                    end
                    break
                end
            end
        end
        db.query("INSERT INTO `snowballwar`  VALUES ('', ".. db.escapeString(score[1][1]) ..  ",".. score[1][2] ..", ".. db.escapeString(data) ..", ".. db.escapeString(hora) ..");")  
        db.query("UPDATE `players` SET `sbw_points`=`sbw_points`+".. score[1][2] .." WHERE `name` = " .. db.escapeString(score[1][1]) .. ";")
        doBroadcastMessage("[SNOWBALL EVENT] encerrou-se, parabens ao jogador "..score[1][1].." que venceu o SnowBall Event com "..score[1][2].." pontos.")
    end
    return true
end

local t_l = SBW_AREA[1]
local b_r = SBW_AREA[2]

function moveToEvent()
for _, pid in ipairs(getPlayersOnline()) do
    if isInRange(getCreaturePosition(pid), SBW_WAITROOM[1], SBW_WAITROOM[2]) then
        local posti = {}
        local isPossibleToTeleportPlayer = false
        while (isPossibleToTeleportPlayer == FALSE) do
        doTeleportThing(pid, {x=math.random(t_l.x,b_r.x), y=math.random(t_l.y, b_r.y), z=math.random(t_l.z, b_r.z)})
            if (isInWallArray(posti) == FALSE) then
                isPossibleToTeleportPlayer = TRUE
            end
        end
        doTeleportThing(pid, posti)
        doPlayerSetStorageValue(pid, SBW_INEVENT, 1)
        doPlayerSetStorageValue(pid, SBW_AMMO, SBW_MINAMMO)
        doPlayerSetStorageValue(pid, SBW_SCORE, 0)
        doPlayerSendTextMessage(pid, 27, "[SNOWBALL WAR] Seja bem vindo, aqui estao os comandos que voce vai usar durante o evento\n!snowball atirar --Atirar uma bola de neve.\n!snowball info --Isso mostra seus pontos de jogos e a quantia de bolas de neve que voce tem. Tambem mostra o ranking de pontos do evento.\n Recarregue suas bolas de neve clicando em frente ao gerador no centro do campo.\nAltamente recomendado adicionar estes comandos a sua hotkeys.")                                                                       
    end
end
doRemoveItem(getTileItemById(SBW_TP, 1387).uid)
addEvent(endsnowball, SBW_DURATION*1000*60)
doBroadcastMessage(SBW_MSGSTART)
end

local time = os.date("*t")
local timeopen1 = math.ceil(SBW_TIMEWAIT / 4)
local timeopen2 = math.ceil(SBW_TIMEWAIT / 2)
if (SBW_STARTAUTO) and (isInArray(SBW_DAYS,time.wday)) then
    doBroadcastMessage(SBW_MSGWARNING)
    if SBW_USEWAIT then
        addEvent(doBroadcastMessage, timeopen1*1000*60, "[SNOWBALL WAR] - Resta(m) ".. timeopen2 .." minuto(s) para iniciar o evento!")
        if (timeopen2 ~= timeopen1) then
            addEvent(doBroadcastMessage, timeopen2*1000*60, "[SNOWBALL WAR] - Resta(m) ".. timeopen1 .." minuto(s) para iniciar o evento!")
        end
        addEvent(moveToEvent, SBW_TIMEWAIT*1000*60)
    local tp = doCreateItem(1387, SBW_TPGO, SBW_TP)
        doItemSetAttribute(tp, "aid", 2880)
    else
        if SBW_TFS == "0.4" then
            doSetItemActionId(doCreateItem(tp, SBW_TP), 2880)
        else
            doSetItemActionId(doCreateItem(tp, SBW_TP), 2880)
        end
        if(SBW_DURATION > 0) then
            addEvent(endsnowball, SBW_DURATION*1000*60)
        end
    end
end
return true
end

 

 

 

 

 

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

14 horas atrás, davidguimaraesdrum disse:

 

Pode me auxiliar? eu não sei como executar esses comandos pelo SQLITE:

 

  Mostrar conteúdo oculto

 

E por fim, vá até o seu banco de dados (phpmyadmin) e insira a seguinte query:

CREATE TABLE IF NOT EXISTS `snowballwar` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(255) NOT NULL, `score` int(11) NOT NULL, `data` varchar(255) NOT NULL, `hora` varchar(255) NOT NULL, PRIMARY KEY (`id`), KEY `id` (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;

 

Ainda no phpmyadmin execute:

ALTER TABLE `players` ADD `sbw_points` int(11);

 

 

Tenta esse.  No SQLITEStudio aperte ALT + E e coloque esse codigo la dentro e aperte F9.

 

 


CREATE TABLE snowballwar ( id INTEGER (11) NOT NULL, name VARCHAR (255) NOT NULL, score INTEGER (11) NOT NULL, data VARCHAR (255) NOT NULL, hora VARCHAR (255) NOT NULL, PRIMARY KEY ( id ) );

 

 

Ja este comando

ALTER TABLE `players` ADD `sbw_points` int(11);

E da mesma forma do de cima ALT + E / Colar nas linhas que tem la/ F9

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

Senhoras e senhores, se alguma resposta lhe ajudou, marque-a como a melhor resposta e de ponto positivo, assim você incentiva quem lhe ajudou a continuar ajudando!!.

Link para o post
Compartilhar em outros sites
1 hora atrás, tetheuscunha disse:

 

 

 

Testa esse aqui. O meu estava dando o mesmo erro, fui la e configurei uma linha, mais nao me recordo qual! kkkkk, ja faz um tempinho que modifiquei. Testa esse e me fala se funcionou.

  Mostrar conteúdo oculto


function onTime()
                
function isInWallArray(pos)
    for k = 0, table.getn(SBW_WALLSID) do
        if (getTileItemById(pos, SBW_WALLSID[k]).itemid == SBW_WALLSID[k]) then
            return true    
        end    
    end
 return false
end

               
function endsnowball()
    local score = {}
    if not SBW_USEWAIT then
        doRemoveItem(getTileItemById(SBW_TP, 1387).uid)
    end
    for _, pid in ipairs(getPlayersOnline()) do
        if getPlayerStorageValue(pid, SBW_INEVENT) > 0 then
            table.insert(score, {getCreatureName(pid), getPlayerStorageValue(pid, SBW_SCORE)})
            doPlayerSetStorageValue(pid, SBW_INEVENT, 0)
            doPlayerSetStorageValue(pid, SBW_SCORE, 0)
            doPlayerSetStorageValue(pid, SBW_AMMO, 0)
            doTeleportThing(pid, SBW_TPEND)
        end
    end
    table.sort(score, function(a, b) return a[2] > b[2] end)
    --local random_item = SBW_REWARDS[math.random(1, #SBW_REWARDS)]
    local hora = os.date("%X")
    local data = os.date("%x")    
    if table.getn(score) > 0 then
        if SBW_ADDREWARD then
            for _, pid in ipairs(getPlayersOnline()) do
                if getCreatureName(pid) == score[1][1] then
                    for op,ad in pairs(SBW_REWARDS) do
                        doPlayerAddItem(pid, ad[1], ad[2])
                    end
                    break
                end
            end
        end
        db.query("INSERT INTO `snowballwar`  VALUES ('', ".. db.escapeString(score[1][1]) ..  ",".. score[1][2] ..", ".. db.escapeString(data) ..", ".. db.escapeString(hora) ..");")  
        db.query("UPDATE `players` SET `sbw_points`=`sbw_points`+".. score[1][2] .." WHERE `name` = " .. db.escapeString(score[1][1]) .. ";")
        doBroadcastMessage("[SNOWBALL EVENT] encerrou-se, parabens ao jogador "..score[1][1].." que venceu o SnowBall Event com "..score[1][2].." pontos.")
    end
    return true
end

local t_l = SBW_AREA[1]
local b_r = SBW_AREA[2]

function moveToEvent()
for _, pid in ipairs(getPlayersOnline()) do
    if isInRange(getCreaturePosition(pid), SBW_WAITROOM[1], SBW_WAITROOM[2]) then
        local posti = {}
        local isPossibleToTeleportPlayer = false
        while (isPossibleToTeleportPlayer == FALSE) do
        doTeleportThing(pid, {x=math.random(t_l.x,b_r.x), y=math.random(t_l.y, b_r.y), z=math.random(t_l.z, b_r.z)})
            if (isInWallArray(posti) == FALSE) then
                isPossibleToTeleportPlayer = TRUE
            end
        end
        doTeleportThing(pid, posti)
        doPlayerSetStorageValue(pid, SBW_INEVENT, 1)
        doPlayerSetStorageValue(pid, SBW_AMMO, SBW_MINAMMO)
        doPlayerSetStorageValue(pid, SBW_SCORE, 0)
        doPlayerSendTextMessage(pid, 27, "[SNOWBALL WAR] Seja bem vindo, aqui estao os comandos que voce vai usar durante o evento\n!snowball atirar --Atirar uma bola de neve.\n!snowball info --Isso mostra seus pontos de jogos e a quantia de bolas de neve que voce tem. Tambem mostra o ranking de pontos do evento.\n Recarregue suas bolas de neve clicando em frente ao gerador no centro do campo.\nAltamente recomendado adicionar estes comandos a sua hotkeys.")                                                                       
    end
end
doRemoveItem(getTileItemById(SBW_TP, 1387).uid)
addEvent(endsnowball, SBW_DURATION*1000*60)
doBroadcastMessage(SBW_MSGSTART)
end

local time = os.date("*t")
local timeopen1 = math.ceil(SBW_TIMEWAIT / 4)
local timeopen2 = math.ceil(SBW_TIMEWAIT / 2)
if (SBW_STARTAUTO) and (isInArray(SBW_DAYS,time.wday)) then
    doBroadcastMessage(SBW_MSGWARNING)
    if SBW_USEWAIT then
        addEvent(doBroadcastMessage, timeopen1*1000*60, "[SNOWBALL WAR] - Resta(m) ".. timeopen2 .." minuto(s) para iniciar o evento!")
        if (timeopen2 ~= timeopen1) then
            addEvent(doBroadcastMessage, timeopen2*1000*60, "[SNOWBALL WAR] - Resta(m) ".. timeopen1 .." minuto(s) para iniciar o evento!")
        end
        addEvent(moveToEvent, SBW_TIMEWAIT*1000*60)
    local tp = doCreateItem(1387, SBW_TPGO, SBW_TP)
        doItemSetAttribute(tp, "aid", 2880)
    else
        if SBW_TFS == "0.4" then
            doSetItemActionId(doCreateItem(tp, SBW_TP), 2880)
        else
            doSetItemActionId(doCreateItem(tp, SBW_TP), 2880)
        end
        if(SBW_DURATION > 0) then
            addEvent(endsnowball, SBW_DURATION*1000*60)
        end
    end
end
return true
end

 

 

 

 

 

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

Tenta esse.  No SQLITEStudio aperte ALT + E e coloque esse codigo la dentro e aperte F9.

  Mostrar conteúdo oculto

 


CREATE TABLE snowballwar ( id INTEGER (11) NOT NULL, name VARCHAR (255) NOT NULL, score INTEGER (11) NOT NULL, data VARCHAR (255) NOT NULL, hora VARCHAR (255) NOT NULL, PRIMARY KEY ( id ) );

 

 

Ja este comando


ALTER TABLE `players` ADD `sbw_points` int(11);

E da mesma forma do de cima ALT + E / Colar nas linhas que tem la/ F9

Deu certo meu parceiro, porem tem outro problema que está acontecendo quando acerto uma pessoa ela não morre so conta o ponto.

Obrigado pela ajuda +REP

Link para o post
Compartilhar em outros sites
2 horas atrás, Nox disse:

Deu certo meu parceiro, porem tem outro problema que está acontecendo quando acerto uma pessoa ela não morre so conta o ponto.

Obrigado pela ajuda +REP

Ja sei qual e o erro. Também tive ele. Agora estou na faculdade assim que chega em casa eu mando pra voce a correção. Ate 22:30 eu posto aqui.

Senhoras e senhores, se alguma resposta lhe ajudou, marque-a como a melhor resposta e de ponto positivo, assim você incentiva quem lhe ajudou a continuar ajudando!!.

Link para o post
Compartilhar em outros sites
8 minutos atrás, tetheuscunha disse:

Ja sei qual e o erro. Também tive ele. Agora estou na faculdade assim que chega em casa eu mando pra voce a correção. Ate 22:30 eu posto aqui.

Obrigado meu brother 

Link para o post
Compartilhar em outros sites
Em 23/03/2017 ás 19:54, Nox disse:

Obrigado meu brother 

Desculpe não postar ontem, cheguei era 22:30 morto da faculdade.

 

 

 


function onSay(cid, words, param, channel)
local k = string.explode(param, ",")
if(k[1] ~= nil) then
        if(string.upper(k[1]) == 'INFO') then
            local score = {}
            local output =  "Voce tem " .. getPlayerStorageValue(cid, SBW_SCORE) .. " pontos.\nVoce tem "..getPlayerStorageValue(cid, SBW_AMMO).."x municoes.\n------------------\nO maior matador:\n"
            for _, pid in ipairs(getPlayersOnline()) do
                if getPlayerStorageValue(pid, SBW_INEVENT) then
                    table.insert(score, {getCreatureName(pid), getPlayerStorageValue(pid, SBW_SCORE)})
                end
            end
            local lx = table.getn(score)
            if(lx > 3) then lx = 3 end
                table.sort(score, function(a, b) return a[2] > b[2] end)
                for k = 1,lx do
                    output = output .. k..". "..score[k][1] .." [".. score[k][2] .."].\n"
                end
                doPlayerPopupFYI(cid, output)
            end
if (string.upper(k[1]) == 'ATIRAR') then
    if(getPlayerStorageValue(cid, SBW_INEVENT) == 1) and not getTileInfo(getThingPos(cid)).protection then
        if getPlayerStorageValue(cid, SBW_EXAUSTHED) <= 1 then
            if(getPlayerStorageValue(cid, SBW_AMMO) > 0) then
                if SBW_STATUS == 'on' then
                    if(SBW_AMMOINFI == false) then
                        doPlayerSetStorageValue(cid, SBW_AMMO, getPlayerStorageValue(cid, SBW_AMMO)-1)
                    end
                    doPlayerSetStorageValue(cid, SBW_EXAUSTHED, 2)
                    lineAnimation(getPlayerLookDirection(cid),getCreaturePosition(cid),12,cid,1,0,1,0,0,0,1,0)
                    addEvent(doPlayerSetStorageValue, SBW_SHOOTEXAUSTHED, cid, SBW_EXAUSTHED, 1)
                    if (getPlayerStorageValue(cid, SBW_AMMO) ~= 1) then
                        doPlayerSendTextMessage(cid, 27, "Restam "..getPlayerStorageValue(cid, SBW_AMMO).."x bolas de neve.")
                    else
                        doPlayerSendTextMessage(cid, 27, "Usando sua ultima bola de neve, recarregue.")
                    end
                end
            else
                doPlayerSendCancel(cid, "Voce esta sem bolas de neve, recarregue no centro do campo ou mate um inimigo.")
                doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)     
            end
        else
            doPlayerPopupFYI(cid, "Acalme-se voce deve esperar para atirar novamente.")
            doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
            return false
        end
    else
        doPlayerPopupFYI(cid, "Voce precisa estar dentro evento ou fora da pz.")
        doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
    end
end
end
return true
end
 
 
                function lineAnimation(lookDir,playerPos,effect,cid,fvar,fpos,ffound,fposV,fcheck,fvcid,floopCounter,fvpid, name)
                local var = fvar
                local pos = fpos
                local found = ffound
                local posV = fposV
                local check = fcheck
                local vcid = fvcid
                local loopCounter = floopCounter
                local vpid = fvpid
                local storage = SBW_EXAUSTHED
                        if var < 2 then
                                vcid = cid
                        end
                        pos = playerPos
                        if not isInWallArray(convert(lookDir,pos)) then--isInWallArray({x=convert(lookDir,pos).x, y=convert(lookDir,pos).y,z=convert(lookDir,pos).z}) then --isInArray(t.onShoot.misc.walls_id, getThingfromPos({x=convert(lookDir,pos).x, y=convert(lookDir,pos).y,z=convert(lookDir,pos).z, stackpos=0}).itemid) then
                                doSendDistanceShoot(pos, convert(lookDir,pos),effect)
                                pos = convert(lookDir,pos)
                                var=var+1
                                posV = convertV(lookDir,playerPos)
                                for _, pid in ipairs(getPlayersOnline()) do
                                        if (getCreaturePosition(pid).x == pos.x and getCreaturePosition(pid).y == pos.y and getCreaturePosition(pid).z == pos.z) then
                                                --if loopCounter > 2 then
                                                vpid = pid
                                                --end
                                                if (vpid ~= vcid) then
                                                        if var > 2 then
                                                                if (getCreaturePosition(pid).x == posV.x and getCreaturePosition(pid).y == posV.y and getCreaturePosition(pid).z == posV.z) then
killPlayer(pid,pos,getCreatureName(vcid))
                                                                        if (lookDir == 0) or (lookDir == 2) then
                                                                                var = 6
                                                                        else
                                                                                var = 8
                                                                        end
                                                                end
                                                        end
                                                        killPlayer(pid,pos,vcid)
                                                        if (lookDir == 0) or (lookDir == 2) then
                                                                var = 6
                                                        else
                                                                var = 8
                                                        end
                                                end
                                        end
                                        loopCounter = loopCounter +1
                                end    
                                if (lookDir == 0) or (lookDir == 2) then
                                        if var ~= 6 then
                                                addEvent(lineAnimation, SBW_BALLSPEED, lookDir,pos,effect,nil,var,pos,found,posV,check,vcid,loopCounter,vpid)
                                        else
                                                var = 1
                                        end
                                else
                                        if var ~= 8 then
                                                addEvent(lineAnimation,  SBW_BALLSPEED, lookDir,pos,effect,nil,var,pos,found,posV,check,vcid,loopCounter,vpid)
                                        else
                                                var = 1
                                        end
                                end
                        else
                                doSendMagicEffect(convert(lookDir,pos),2)
                                var = 1
                        end
                end
 
                local ret = {}
                function convert(lookDir,pos)
                local positions = {
                        [0] = {x = pos.x, y = pos.y-1, z = pos.z},
                        [1] = {x = pos.x+1, y = pos.y, z = pos.z},
                        [2] = {x = pos.x, y = pos.y+1, z = pos.z},
                        [3] = {x = pos.x-1, y = pos.y, z = pos.z}
                        }
                        ret = positions[lookDir]
                return ret
                end
 
 
                local ret = {}
                function convertV(lookDir,pos)
                local positions = {
                        [0] = {x = pos.x, y = pos.y+1, z = pos.z},
                        [1] = {x = pos.x-1, y = pos.y, z = pos.z},
                        [2] = {x = pos.x, y = pos.y-1, z = pos.z},
                        [3] = {x = pos.x+1, y = pos.y, z = pos.z}
                        }
                        ret = positions[lookDir]
                return ret
                end
                
                function isInWallArray(pos)
                        for k = 0, table.getn(SBW_WALLSID) do
                                if getTileItemById(pos, SBW_WALLSID[k]).itemid == SBW_WALLSID[k] then --this doesn't even make sense but tried other ways and it gave errors, so meh 2lazy2search
                                    return true    
                                end
                        end
                        return false
                end
                               
                function killPlayer(cid, pos, killer)
                    local t_l = SBW_AREA[1]
                    local b_r = SBW_AREA[2]
                    local posti = {}
                    local isPossibleToTeleportPlayer = false
                    while (isPossibleToTeleportPlayer == FALSE) do
                    doTeleportThing(cid, {x=math.random(t_l.x,b_r.x), y=math.random(t_l.y, b_r.y), z=math.random(t_l.z, b_r.z)})
                        if isInWallArray(posti) == FALSE then
                            isPossibleToTeleportPlayer = TRUE
                        end
                    end
                    doTeleportThing(cid, posti)
                    doSendMagicEffect(pos,2)
                    doSendMagicEffect(posti,6)
                    doSendAnimatedText(pos, ""..getCreatureName(killer).." ", 55)
                    doPlayerSendTextMessage(cid, 27, "Voce morreu para "..getCreatureName(killer)..".")
                    doPlayerSetStorageValue(killer, SBW_SCORE, getPlayerStorageValue(killer, SBW_SCORE)+SBW_POINTSKILL)                
                    doPlayerSendTextMessage(killer, 27, "You've killed "..getCreatureName(cid)..".")
                    if SBW_LOSTSCORE then
                        doPlayerSetStorageValue(cid, SBW_SCORE, getPlayerStorageValue(cid, SBW_SCORE)-1)
                    end
                    if SBW_RESETAMMO then
                        doPlayerSetStorageValue(cid, SBW_AMMO, SBW_MINAMMO)
                    end
                end
                                               
              

 

 

O erro de o player não ser teletransportado esta em Talkaction, substitui por esse.

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

Senhoras e senhores, se alguma resposta lhe ajudou, marque-a como a melhor resposta e de ponto positivo, assim você incentiva quem lhe ajudou a continuar ajudando!!.

Link para o post
Compartilhar em outros sites
5 horas atrás, tetheuscunha disse:

Desculpe não postar ontem, cheguei era 22:30 morto da faculdade.

 

  Mostrar conteúdo oculto

 


function onSay(cid, words, param, channel)
local k = string.explode(param, ",")
if(k[1] ~= nil) then
        if(string.upper(k[1]) == 'INFO') then
            local score = {}
            local output =  "Voce tem " .. getPlayerStorageValue(cid, SBW_SCORE) .. " pontos.\nVoce tem "..getPlayerStorageValue(cid, SBW_AMMO).."x municoes.\n------------------\nO maior matador:\n"
            for _, pid in ipairs(getPlayersOnline()) do
                if getPlayerStorageValue(pid, SBW_INEVENT) then
                    table.insert(score, {getCreatureName(pid), getPlayerStorageValue(pid, SBW_SCORE)})
                end
            end
            local lx = table.getn(score)
            if(lx > 3) then lx = 3 end
                table.sort(score, function(a, b) return a[2] > b[2] end)
                for k = 1,lx do
                    output = output .. k..". "..score[k][1] .." [".. score[k][2] .."].\n"
                end
                doPlayerPopupFYI(cid, output)
            end
if (string.upper(k[1]) == 'ATIRAR') then
    if(getPlayerStorageValue(cid, SBW_INEVENT) == 1) and not getTileInfo(getThingPos(cid)).protection then
        if getPlayerStorageValue(cid, SBW_EXAUSTHED) <= 1 then
            if(getPlayerStorageValue(cid, SBW_AMMO) > 0) then
                if SBW_STATUS == 'on' then
                    if(SBW_AMMOINFI == false) then
                        doPlayerSetStorageValue(cid, SBW_AMMO, getPlayerStorageValue(cid, SBW_AMMO)-1)
                    end
                    doPlayerSetStorageValue(cid, SBW_EXAUSTHED, 2)
                    lineAnimation(getPlayerLookDirection(cid),getCreaturePosition(cid),12,cid,1,0,1,0,0,0,1,0)
                    addEvent(doPlayerSetStorageValue, SBW_SHOOTEXAUSTHED, cid, SBW_EXAUSTHED, 1)
                    if (getPlayerStorageValue(cid, SBW_AMMO) ~= 1) then
                        doPlayerSendTextMessage(cid, 27, "Restam "..getPlayerStorageValue(cid, SBW_AMMO).."x bolas de neve.")
                    else
                        doPlayerSendTextMessage(cid, 27, "Usando sua ultima bola de neve, recarregue.")
                    end
                end
            else
                doPlayerSendCancel(cid, "Voce esta sem bolas de neve, recarregue no centro do campo ou mate um inimigo.")
                doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)     
            end
        else
            doPlayerPopupFYI(cid, "Acalme-se voce deve esperar para atirar novamente.")
            doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
            return false
        end
    else
        doPlayerPopupFYI(cid, "Voce precisa estar dentro evento ou fora da pz.")
        doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
    end
end
end
return true
end
 
 
                function lineAnimation(lookDir,playerPos,effect,cid,fvar,fpos,ffound,fposV,fcheck,fvcid,floopCounter,fvpid, name)
                local var = fvar
                local pos = fpos
                local found = ffound
                local posV = fposV
                local check = fcheck
                local vcid = fvcid
                local loopCounter = floopCounter
                local vpid = fvpid
                local storage = SBW_EXAUSTHED
                        if var < 2 then
                                vcid = cid
                        end
                        pos = playerPos
                        if not isInWallArray(convert(lookDir,pos)) then--isInWallArray({x=convert(lookDir,pos).x, y=convert(lookDir,pos).y,z=convert(lookDir,pos).z}) then --isInArray(t.onShoot.misc.walls_id, getThingfromPos({x=convert(lookDir,pos).x, y=convert(lookDir,pos).y,z=convert(lookDir,pos).z, stackpos=0}).itemid) then
                                doSendDistanceShoot(pos, convert(lookDir,pos),effect)
                                pos = convert(lookDir,pos)
                                var=var+1
                                posV = convertV(lookDir,playerPos)
                                for _, pid in ipairs(getPlayersOnline()) do
                                        if (getCreaturePosition(pid).x == pos.x and getCreaturePosition(pid).y == pos.y and getCreaturePosition(pid).z == pos.z) then
                                                --if loopCounter > 2 then
                                                vpid = pid
                                                --end
                                                if (vpid ~= vcid) then
                                                        if var > 2 then
                                                                if (getCreaturePosition(pid).x == posV.x and getCreaturePosition(pid).y == posV.y and getCreaturePosition(pid).z == posV.z) then
killPlayer(pid,pos,getCreatureName(vcid))
                                                                        if (lookDir == 0) or (lookDir == 2) then
                                                                                var = 6
                                                                        else
                                                                                var = 8
                                                                        end
                                                                end
                                                        end
                                                        killPlayer(pid,pos,vcid)
                                                        if (lookDir == 0) or (lookDir == 2) then
                                                                var = 6
                                                        else
                                                                var = 8
                                                        end
                                                end
                                        end
                                        loopCounter = loopCounter +1
                                end    
                                if (lookDir == 0) or (lookDir == 2) then
                                        if var ~= 6 then
                                                addEvent(lineAnimation, SBW_BALLSPEED, lookDir,pos,effect,nil,var,pos,found,posV,check,vcid,loopCounter,vpid)
                                        else
                                                var = 1
                                        end
                                else
                                        if var ~= 8 then
                                                addEvent(lineAnimation,  SBW_BALLSPEED, lookDir,pos,effect,nil,var,pos,found,posV,check,vcid,loopCounter,vpid)
                                        else
                                                var = 1
                                        end
                                end
                        else
                                doSendMagicEffect(convert(lookDir,pos),2)
                                var = 1
                        end
                end
 
                local ret = {}
                function convert(lookDir,pos)
                local positions = {
                        [0] = {x = pos.x, y = pos.y-1, z = pos.z},
                        [1] = {x = pos.x+1, y = pos.y, z = pos.z},
                        [2] = {x = pos.x, y = pos.y+1, z = pos.z},
                        [3] = {x = pos.x-1, y = pos.y, z = pos.z}
                        }
                        ret = positions[lookDir]
                return ret
                end
 
 
                local ret = {}
                function convertV(lookDir,pos)
                local positions = {
                        [0] = {x = pos.x, y = pos.y+1, z = pos.z},
                        [1] = {x = pos.x-1, y = pos.y, z = pos.z},
                        [2] = {x = pos.x, y = pos.y-1, z = pos.z},
                        [3] = {x = pos.x+1, y = pos.y, z = pos.z}
                        }
                        ret = positions[lookDir]
                return ret
                end
                
                function isInWallArray(pos)
                        for k = 0, table.getn(SBW_WALLSID) do
                                if getTileItemById(pos, SBW_WALLSID[k]).itemid == SBW_WALLSID[k] then --this doesn't even make sense but tried other ways and it gave errors, so meh 2lazy2search
                                    return true    
                                end
                        end
                        return false
                end
                               
                function killPlayer(cid, pos, killer)
                    local t_l = SBW_AREA[1]
                    local b_r = SBW_AREA[2]
                    local posti = {}
                    local isPossibleToTeleportPlayer = false
                    while (isPossibleToTeleportPlayer == FALSE) do
                    doTeleportThing(cid, {x=math.random(t_l.x,b_r.x), y=math.random(t_l.y, b_r.y), z=math.random(t_l.z, b_r.z)})
                        if isInWallArray(posti) == FALSE then
                            isPossibleToTeleportPlayer = TRUE
                        end
                    end
                    doTeleportThing(cid, posti)
                    doSendMagicEffect(pos,2)
                    doSendMagicEffect(posti,6)
                    doSendAnimatedText(pos, ""..getCreatureName(killer).." ", 55)
                    doPlayerSendTextMessage(cid, 27, "Voce morreu para "..getCreatureName(killer)..".")
                    doPlayerSetStorageValue(killer, SBW_SCORE, getPlayerStorageValue(killer, SBW_SCORE)+SBW_POINTSKILL)                
                    doPlayerSendTextMessage(killer, 27, "You've killed "..getCreatureName(cid)..".")
                    if SBW_LOSTSCORE then
                        doPlayerSetStorageValue(cid, SBW_SCORE, getPlayerStorageValue(cid, SBW_SCORE)-1)
                    end
                    if SBW_RESETAMMO then
                        doPlayerSetStorageValue(cid, SBW_AMMO, SBW_MINAMMO)
                    end
                end
                                               
              

 

 

O erro de o player não ser teletransportado esta em Talkaction, substitui por esse.

 

Esquenta não brother, obrigado deu certinho porem apareceu um outro bug que esta spawnando em cima das coisas mas vou tentar resolver, mas deu certinho.

Link para o post
Compartilhar em outros sites
1 hora atrás, Nox disse:

 

Esquenta não brother, obrigado deu certinho porem apareceu um outro bug que esta spawnando em cima das coisas mas vou tentar resolver, mas deu certinho.

kkkk o meu da o mesmo erro ainda. Não tentei solucionar. Eu acho que é na lib.

 

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

Senhoras e senhores, se alguma resposta lhe ajudou, marque-a como a melhor resposta e de ponto positivo, assim você incentiva quem lhe ajudou a continuar ajudando!!.

Link para o post
Compartilhar em outros sites
8 horas atrás, tetheuscunha disse:

kkkk o meu da o mesmo erro ainda. Não tentei solucionar. Eu acho que é na lib.

 

Também estou achando 

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por Arkanjo39
      CUIDA, CUIDA E VEM CONHECER NOSSO SERVER. KING BAIAK ACABOU DE SER LANÇADO!!! VEM SER O TOP 1 Site com Otclient: https://kingbaiak.com/ PARA NOVOS JOGARES ADM TA DANDO AQUELA FORCINHA! SERVIDOR 8.60 COM RESETS, MONTARIAS E GOLDEN OUTFIT! INFORMAÇÕES BÁSICAS DO SERVIDOR: [+] MAPA BAIAK [+] HIGH EXP [+] RESETS COM + DAMAGE [+] AUTOLOOT AUTOMÁTICO [+] CITY DONATE [+] ROSHAMUUL, ORAMOND E NETHER [+] MONTARIAS E GOLDEN OUTFIT [+] INVASÃO DE MONSTROS AUTOMÁTICAS [+] DAILY MONSTER QUE APARECE AO LOGAR [+] MONTARIAS COM COMANDO !MOUNT [+] SISTEMA DE ROLETA ATUAL [+] CAST WATCH [+] FAST ATTACK [+] CAST ARROWS [+] PUSH CRUZADO [+] REWARD CHEST [+] WARSQUARE [+] COMBO EXP DE POTIONS [+] MINERAÇÃO COM LOJA [+] SISTEMA DE BOSS [+] CRITICAL/DODGE [500/500] [+] LIFE E MANA EM PORCENTAGEM* [+] VARIAS QUESTS [+] EVENTO DTT (AUTOMÁTICO) [+] EVENTO BATLEFIELD (AUTOMÁTICO) [+] EVENTO SNOWBALLWAR (AUTOMÁTICO) [+] EVENTO DESERT WAR (AUTOMÁTICO) [+] EVENTO ZOMBIE (AUTOMÁTICO) [+] EVENTO CAMPO MINADO (AUTOMÁTICO) [+] EVENTO TEAM BATLE (AUTOMÁTICO) [+] EVENTO CAPTURE THE FLAG (AUTOMÁTICO)
    • Por BTitan
      Baiak Titan: Uma Experiência Incomparável no Universo Baiak
       
      O Baiak Titan combina a nostalgia dos antigos tempos de OTServ com a inovação e modernidade atuais. Oferecemos um mapa vasto, com mais de 100 áreas de caça para explorar, além de vocações equilibradas para um PvP justo e emocionante. Diversos eventos automáticos ocorrem diariamente, garantindo diversão constante para os jogadores. O servidor conta com vários sistemas, como por exemplo, montarias para quem utiliza o cliente exclusivo, monstros do Tibia 9.6+, sistema de mineração, entre outros!
       
      Por Que Escolher o Baiak Titan?
       
      PvP de Alta Qualidade: Embora seja um servidor Baiak, nosso mapa é cuidadosamente projetado para proporcionar ganho de experiência sem perder a seriedade do jogo, oferecendo desafios instigantes e um equilíbrio perfeito para combates épicos.
      Jogabilidade Customizada: O mapa Baiak foi exclusivamente adaptado para promover intensas batalhas de PvP, com recursos inovadores que mantêm a jogabilidade sempre fresca e emocionante.

      Detalhes do Servidor:
       
      IP: baiaktitan.com Website: https://baiaktitan.com Account Manager: 1/1
        Principais Características:
       
      Uptime 24/7, Sem Lag: Jogue a qualquer hora com a estabilidade de servidores dedicados e de alta performance. Velocidade de Ataque Equilibrada: Ajustada perfeitamente para garantir combates dinâmicos e justos. Sistema de Cast: Transmita suas jogadas ao vivo e assista aos seus amigos em ação. Cliente Exclusivo: Software personalizado com novos outfits, montarias e criaturas, enriquecendo ainda mais sua experiência no jogo. Runas, Poções e Flechas Não Infinitas: Valorizamos uma jogabilidade mais estratégica e desafiadora, onde os recursos precisam ser geridos com sabedoria.
      Eventos Automáticos:
       
      Zombie Team Battle Monster Hunter Castle (War of Emperium) Capture The Flag DOTA Corrida Arena War (O último sobrevivente ganha) Fire Storm
        Taxas do Servidor:
       
      EXP: 200x (com stages)
      Skill: 100x
      Magic: 30x
      Loot: 3x
       
      Junte-se à nossa comunidade e viva essa aventura única. O Baiak Titan espera por você!
    • Por campospkks
      Servidor muito bem otimizado, com amplo map para uma diversão imperdível. 
       
      *  Quest System
      * bugs corrigidos 90,0%
      * Client Específico (V8)
      * Mobile Adaptavel e Otimizado
      * database.sql já com (Modulo Pix) 
      * site 95,9% atualizado (Troque, pois a marca já possuí proprietário)
      * Franquia Tibia Custom baseado em armas.
       
      Site Original: soulgun.com.br
      discord.gg/cCWcaMwjuB
      Relançamento Servidor 20-09-2024
      Horario 17:00
      whatsap Grupo
      https://chat.whatsapp.com/JsAyLAmwJQyGEWgHTI4096
      Video Do Game
      https://youtu.be/N8asxdnzmGw


    • Por chateadoagr
      Bem-vindo ao Genesis Online Tibia (GOT), um mundo onde a civilização foi devastada por um apocalipse zumbi. Inspirado em referências como The Walking Dead e Resident Evil, o GOT desafia você a sobreviver em meio ao caos, enfrentando hordas de mortos-vivos, explorando ruínas perigosas e formando alianças estratégicas. Embarque nesta jornada épica de sobrevivência e descoberta, onde cada escolha molda seu destino em um cenário hostil repleto de desafios e perigos iminentes.
       
       
      Adentre o universo de Genesis Online Tibia (GOT), um jogo repleto de sistemas inovadores e emocionantes. Equipe-se com um vasto arsenal de armas para enfrentar as ameaças do apocalipse zumbi, enquanto o sistema autoloot simplifica suas conquistas. Desenvolva seu personagem através de um sistema de upgrade único, aprimorando habilidades e atributos para enfrentar desafios cada vez mais formidáveis.
       
      Explore um mundo imersivo onde o som desempenha um papel crucial, criando uma atmosfera envolvente e realista. Vasculhe cada canto em busca de recursos vitais, desvendando segredos e tesouros ocultos. Siga uma cativante história através de missões que expandem o enredo, revelando os mistérios por trás do apocalipse e oferecendo recompensas valiosas.
       
      Em Genesis Online Tibia, a jornada pela sobrevivência é repleta de ação, estratégia e emoção, convidando você a se aventurar em um mundo onde cada decisão molda seu destino e determina sua capacidade de enfrentar os desafios que aguardam.

      Em breve imagens do servidor!
       
       



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo