fabioluciopda 0 Postado Outubro 29, 2010 Share Postado Outubro 29, 2010 (editado) Eu Criei 1 NPC Chamado Anunciante Para Mandar Broadcast Para o OT Todo e Quando Eu Abro o OT Aparece Assim: [29/10/2010 18:54:51] [Warning - NpcScript::NpcScript] Cannot load script: data/npc/scripts/broadcaster.lua [29/10/2010 18:54:51] data/npc/scripts/broadcaster.lua:115: ')' expected near 'Disse' Se Alguem Puder Me Ajuda , Esse e o Script -- NPC Broadcaster by Alreth, v1.40, 2008-09-22 17:50 CET -- Idea by souhlen (Anel) -- Thanks to Qwerty| for helping fix the spambug -- Thanks to Colandus for providing changes for compability with Tibia 8.21/22. focus = 0 next_focus = 0 talk_start = 0 msgHi = 'Ola! Voce Deseja Mandar Uma Mensagem Para o Tibia Lost?' msgBye = 'Espero Te Ver Novamente!' price = 5000 inConvo = 0 broadcast = '' cast = '' target = 0 following = false attacking = false function onThingMove(creature, thing, oldpos, oldstackpos) end function onCreatureAppear(creature) end function onCreatureDisappear(cid, pos) if (focus == cid) then selfSay(msgBye) distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end end end function onCreatureTurn(creature) end function msgcontains(txt, str) return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)')) end function onCreature(cid, type, msg) msg2 = msg msg = string.lower(msg) if (cast ~= '') then selfSay('does nothing') -- do nothing, wait until message has been broadcasted and npc has replied elseif (getDistanceToCreature(cid) >= 4 and focus == cid) then selfSay('Chegue Mais Perto, '..getCreatureName(cid)..'. Eu Nao Consigo Ouvir O Que Voce Diz.') elseif (type == 1) then if ((string.find(msg, '(%a*)hi(%a*)') or string.find(msg, '(%a*)hello(%a*)') or string.find(msg, '(%a*)heylo(%a*)') or string.find(msg, '(%a*)greetings(%a*)')) and (focus == 0) and getDistanceToCreature(cid) < 4) then selfSay(msgHi) focus = cid talk_start = os.clock() inConvo = 1 elseif ((string.find(msg, '(%a*)hi(%a*)') or string.find(msg, '(%a*)hello(%a*)') or string.find(msg, '(%a*)heylo(%a*)') or string.find(msg, '(%a*)greetings(%a*)')) and (focus ~= cid) and getDistanceToCreature(cid) < 4) then if (next_focus > 0 and getDistanceToCreature(next_focus) < 4) then selfSay('Tire Uma Soneca Enquanto Eu Ajudo Os Outros, ' .. getCreatureName(cid) .. '.') else selfSay('Espero Ver Voce em Breve, ' .. getCreatureName(cid) .. '.') next_focus = cid end elseif (focus == cid) then talk_start = os.clock() if ((msgcontains(msg, 'mensagem') or msgcontains(msg, 'enviar')) and inConvo == 0) then if (getPlayerLevel(cid) >= 30) then selfSay('Voce Quer Que Eu Transmita Algo Para Voce?') inConvo = 1 else selfSay('Volte Aqui Quando Voce Estiver Em Um LvL Mais Alto') end elseif (msgcontains(msg, 'sim') and inConvo == 1) then selfSay('Me Diga O Que Deseja Transmitir.') inConvo = 2 elseif (msgcontains(msg, 'nao') and inConvo == 1) then selfSay('Perhaps tomorrow then..') if (next_focus > 0 and getDistanceToCreature(next_focus) < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' elseif (inConvo == 2 and (msg ~= 'parar')) then if (string.len(msg) > 90) then selfSay('Sinto Muito Mas Sua Mensagem Nao Pode Ter Mais de 90 Letras, Incluindo Espaco e Outros Caracteres. Diga "mensagem" ou Diga "parar" Para Terminar Nossa Conversa.') else broadcast = msg2 selfSay('Voce Quer Pagar '..price..' gold Para Eu Mandar Esta Mensagem? "'..broadcast..'"') inConvo = 3 end elseif (msgcontains(msg, 'sim') and inConvo == 3) then if (doPlayerRemoveMoney(cid, price) == 1) then doSendBroadcast ("..getCreatureName(cid).." Disse: "..broadcast..") saycast = os.clock() inConvo = 1 io.output(io.open("broadcast.log", "a")) io.write("["..os.date("%y.%m.%d %X").."] <"..getCreatureName(cid).."> "..broadcast.."\n") io.close() cast = broadcast else selfSay('Voce Nao Pode Usar Este Servico. Por Favor Volte Quando Tiver Mais Dinheiro!') if (next_focus > 0) then distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' end end elseif (msgcontains(msg, 'nao') and inConvo == 3) then selfSay('Ok then.') inConvo = 0 broadcast = '' elseif (string.find(msg, '(%a*)trabalho(%a*)')) then selfSay('Eu Tenho a Maior Voz do Mundo! Pessoas Me Pagam Para Enviar Mensagens Para Elas.') inConvo = 0 elseif (string.find(msg, '(%a*)bye(%a*)')) then selfSay(msgBye) if (next_focus > 0) then distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' end end end end end function onCreatureChangeOutfit(creature) end function onThink() if (cast ~= '' and (os.clock() - saycast) > 1) then selfSay('Voce Quer Que Eu Transmita Algo Para Voce?') cast = '' elseif (os.clock() - talk_start) > 30 then if (focus > 0) then selfSay(msgBye) if (next_focus > 0) then distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' end elseif (focus ~= 0) then distFocus = getDistanceToCreature(focus) if (distFocus ~= nil and distFocus > 5) then selfSay(msgBye) if (next_focus > 0) then distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 end else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' end end end end Vlws Ai Editado Outubro 29, 2010 por Fabioapara Link para o comentário Compartilhar em outros sites More sharing options...
Karislayer 1 Postado Outubro 30, 2010 Share Postado Outubro 30, 2010 Caro amigo, por favor olhe antes de criar um post, essa é a área de Design, e o que você posta é um Pedido (ajuda de Script? Atenção caro amigo, Abraços!!! Reportado para que movam seu tópico!!! Link para o comentário Compartilhar em outros sites More sharing options...
comedinhasss 234 Postado Outubro 30, 2010 Share Postado Outubro 30, 2010 Reportado para moverem a área certa... enquanto ao erro: Tente colocar esse: -- NPC Broadcaster by Alreth, v1.40, 2008-09-22 17:50 CET -- Idea by souhlen (Anel) -- Thanks to Qwerty| for helping fix the spambug -- Thanks to Colandus for providing changes for compability with Tibia 8.21/22. focus = 0 next_focus = 0 talk_start = 0 msgHi = 'Ola! Voce Deseja Mandar Uma Mensagem Para o Tibia Lost?' msgBye = 'Espero Te Ver Novamente!' price = 5000 inConvo = 0 broadcast = '' cast = '' target = 0 following = false attacking = false function onThingMove(creature, thing, oldpos, oldstackpos) end function onCreatureAppear(creature) end function onCreatureDisappear(cid, pos) if (focus == cid) then selfSay(msgBye) distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end end end function onCreatureTurn(creature) end function msgcontains(txt, str) return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)')) end function onCreature(cid, type, msg) msg2 = msg msg = string.lower(msg) if (cast ~= '') then selfSay('does nothing') -- do nothing, wait until message has been broadcasted and npc has replied elseif (getDistanceToCreature(cid) >= 4 and focus == cid) then selfSay('Chegue Mais Perto, '..getCreatureName(cid)..'. Eu Nao Consigo Ouvir O Que Voce Diz.') elseif (type == 1) then if ((string.find(msg, '(%a*)hi(%a*)') or string.find(msg, '(%a*)hello(%a*)') or string.find(msg, '(%a*)heylo(%a*)') or string.find(msg, '(%a*)greetings(%a*)')) and (focus == 0) and getDistanceToCreature(cid) < 4) then selfSay(msgHi) focus = cid talk_start = os.clock() inConvo = 1 elseif ((string.find(msg, '(%a*)hi(%a*)') or string.find(msg, '(%a*)hello(%a*)') or string.find(msg, '(%a*)heylo(%a*)') or string.find(msg, '(%a*)greetings(%a*)')) and (focus ~= cid) and getDistanceToCreature(cid) < 4) then if (next_focus > 0 and getDistanceToCreature(next_focus) < 4) then selfSay('Tire Uma Soneca Enquanto Eu Ajudo Os Outros, ' .. getCreatureName(cid) .. '.') else selfSay('Espero Ver Voce em Breve, ' .. getCreatureName(cid) .. '.') next_focus = cid end elseif (focus == cid) then talk_start = os.clock() if ((msgcontains(msg, 'mensagem') or msgcontains(msg, 'enviar')) and inConvo == 0) then if (getPlayerLevel(cid) >= 30) then selfSay('Voce Quer Que Eu Transmita Algo Para Voce?') inConvo = 1 else selfSay('Volte Aqui Quando Voce Estiver Em Um LvL Mais Alto') end elseif (msgcontains(msg, 'sim') and inConvo == 1) then selfSay('Me Diga O Que Deseja Transmitir.') inConvo = 2 elseif (msgcontains(msg, 'nao') and inConvo == 1) then selfSay('Perhaps tomorrow then..') if (next_focus > 0 and getDistanceToCreature(next_focus) < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' elseif (inConvo == 2 and (msg ~= 'parar')) then if (string.len(msg) > 90) then selfSay('Sinto Muito Mas Sua Mensagem Nao Pode Ter Mais de 90 Letras, Incluindo Espaco e Outros Caracteres. Diga "mensagem" ou Diga "parar" Para Terminar Nossa Conversa.') else broadcast = msg2 selfSay('Voce Quer Pagar '..price..' gold Para Eu Mandar Esta Mensagem? "'..broadcast..'"') inConvo = 3 end elseif (msgcontains(msg, 'sim') and inConvo == 3) then if (doPlayerRemoveMoney(cid, price) == 1) then selfSay('"..getCreatureName(cid).." Disse: "..broadcast.."') saycast = os.clock() inConvo = 1 io.output(io.open("broadcast.log", "a")) io.write("["..os.date("%y.%m.%d %X").."] <"..getCreatureName(cid).."> "..broadcast.."\n") io.close() cast = broadcast else selfSay('Voce Nao Pode Usar Este Servico. Por Favor Volte Quando Tiver Mais Dinheiro!') if (next_focus > 0) then distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' end end elseif (msgcontains(msg, 'nao') and inConvo == 3) then selfSay('Ok then.') inConvo = 0 broadcast = '' elseif (string.find(msg, '(%a*)trabalho(%a*)')) then selfSay('Eu Tenho a Maior Voz do Mundo! Pessoas Me Pagam Para Enviar Mensagens Para Elas.') inConvo = 0 elseif (string.find(msg, '(%a*)bye(%a*)')) then selfSay(msgBye) if (next_focus > 0) then distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' end end end end end function onCreatureChangeOutfit(creature) end function onThink() if (cast ~= '' and (os.clock() - saycast) > 1) then selfSay('Voce Quer Que Eu Transmita Algo Para Voce?') cast = '' elseif (os.clock() - talk_start) > 30 then if (focus > 0) then selfSay(msgBye) if (next_focus > 0) then distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 else focus = 0 talk_start = 0 inConvo = 0 end else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' end elseif (focus ~= 0) then distFocus = getDistanceToCreature(focus) if (distFocus ~= nil and distFocus > 5) then selfSay(msgBye) if (next_focus > 0) then distFocus = getDistanceToCreature(next_focus) if (distFocus ~= nil and distFocus < 4) then selfSay(msgHi) talk_start = os.clock() focus = next_focus next_focus = 0 inConvo = 1 end else focus = 0 talk_start = 0 inConvo = 0 end broadcast = '' end end end end Link para o comentário Compartilhar em outros sites More sharing options...
Zutun 58 Postado Outubro 30, 2010 Share Postado Outubro 30, 2010 Obrigado por reportar comedinhass rep+. Preste mais atenção ao fazer seus posts. Tópico movido para Dúvida sobre Scripts. Link para o comentário Compartilhar em outros sites More sharing options...
fabioluciopda 0 Postado Outubro 30, 2010 Autor Share Postado Outubro 30, 2010 (editado) comedinhas eu fiz só que quando eu falo Hi ele não responde, num faz nada, só que aquele erro ja foi =D, se der pra ajudar vlw Editado Novembro 30, 2010 por Fabioapara Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados