Search the Community
Showing results for tags 'amoeba13'.
-
Killua Task Sytem Versões testadas: tfs 0.3.6 e 0.4 Eu sei que já existem vários task systems, inclusive aqui no fórum, mas do jeitinho que eu queria, não consegui achar nenhum. Por isso, resolvi fazer um eu mesmo. O que ele tem de diferente? • É totalmente simplificado. • Não precisa "pegar" as tasks. Elas já são todas automáticas, ou seja, os monstros são contados desde sempre. • É tudo configurado em uma única tabela, de forma muito simples. • Tem um NPC que somente entra as recompensas. • Seu progresso pode ser visto pelo comando !task Atualização do sistema: Refiz os códigos pois existia uma possibilidade de bug. Otimizei eles, deixando o código mais limpo, eficiente e rápido. Aconselho a todos que usam o sistema que instalem a nova versão. Instalação: Tags: Em talkacions.xml adicione: <talkaction log="yes" words="!task" event="script" value="amoebaTask.lua"/> Em creaturescripts.xml adicione: <event type="kill" name="AmoebaTask" event="script" value="amoebaTaskCreature.lua"/> Em data/creaturescritps/scripts/login.lua adicione: registerCreatureEvent(cid, "AmoebaTask") Scripts: Lib: Crie amoebaTask.lua em data/lib e coloque Talkaction: Crie amoebaTask.lua em data/talkactions/scripts e coloque Creaturescripts: Crie amoebaTaskCreature.lua em data/creaturescripts/scripts e coloque NPC: Em data/npc crie Task Man.xml e coloque Configuração: A configuração é feita unicamente na tabela da lib: amoebaTask = { ["Jabuti"] = {creatures = {"Jabuti","Jabuti Hatchling"}, storage = 2312112, storagecount = 890120, count = 300, exp = 0, money = 0, premios = {{6527, 10},{10133, 1}}}, ["Thenebreus"] = {creatures = {"Thenebreus"}, storage = 2312113, storagecount = 890121, count = 250, exp = 0, money = 0, premios = {{6527, 4},{10134, 1}}}, ["Demon"] = {creatures = {"Demon"}, storage = 2312114, storagecount = 890122, count = 5, exp = 0, money = 0, premios = {{6527, 4},{10134, 1}}} } Em [""] vc coloca o nome que vai aparecer no !task e que também será usado para pega a recompensa no NPC. Em creatures vc coloca todos os monstros que vão contabilizar para tal task. Em storage vc coloca o storage de task completa, que garante que o premio só será pego uma vez. Esse storage nunca pode ser repetido! Em storagecount vc coloca o storage de contagem de monstros. Esse também nunca pode ser repetido! Em count vc coloca o número de monstros necessários pra completar a task. Em exp vc coloca a exp que ganha completando. Em money vc coloca o dinheiro que ganha completando. Em premios vc coloca os itens que ganham completando, seguido de sua quantidade. Ex: {6527, 4} o player vai receber 4 itens de id 6527. Espero que façam bom uso do sistema. Vou ficar feliz em atender qualquer tipo de dúvida e também aceito sugestões. Caso queira que as tasks possam ser feitas repetidas vezes, me peça que eu ponho aqui. Pois basta mudar duas linhas.
-
Warzone Event por Killua, antigo amoeba13 Eu fiz o famoso Warzone Event do tibia global e vou disponibilizar pra vcs, pra quem nao conhece, segue video do evento. (Assistam a partir dos 3 minutos.) PS: Os codigos estao configurados com as posicoes do mapa global "originial" A primeira parte eh a action (De clicar no cristal verde pra comecar a nascer os monstros) Crie um arquivo chamado warzone.lua em data/actions/scripts e coloque esse codigo: Configurando: Siga as instrucoes que estao dentro do script e Em local position = {x = 33094 + math.random(1, 10), y = 31904 + math.random(1, 8), z = 10} No lugar do 33094 vc coloca a posicao x minima da area onde vao nascer os monstros. No lugar do 31904 vc coloca a posicao y minima da area onde vao nascer os monstros. Agora, a segunda parte eh o movement Em data/movements/scripts crie warzone.lua e coloque esse codigo: Configurando: Simplesmente coloque o actionID 5157 no piso onde eh criado o tp (o local posdotp da action) e o actionID 5158 no piso que vai ser a saida da sala do Deathstriker. Eh isso ai, espero que ajude alguem. Fiz esse evento a pedido do usuario UroTTa Por favor, deixe seu comentario. Abracos
- 19 replies
-
- warzone
- warzone event
- (and 6 more)
-
Olá, eu fiz uma função bem útil e vou postar aqui: function getPlayersInArea(fromPos, toPos) -- function by amoeba13 playersInArea = {} for x = fromPos.x, toPos.x do for y = fromPos.y, toPos.y do for z = fromPos.z, toPos.z do totalArea = {x=x, y=y, z=z} playerz = getTopCreature(totalArea) if isPlayer(playerz.uid) then table.insert(playersInArea, playerz.uid) end end end end return playersInArea end Como usar? Exemplo: function onSay(cid, words, param, channel) local area = getPlayersInArea({x = 153, y = 50, z = 7}, {x = 156, y = 53, z = 7}) if area then for i = 1, (#area) do doTeleportThing(area[i], {x = 160, y = 51, z = 7}, false) end end return true end
- 11 replies
-
- getplayersinarea
- amoeba13
-
(and 2 more)
Tagged with:
-
Player Pull Action Fiz esse script para concorrer no OMS 1 edicao. Descricao: Um jogador puxa um outro para sua frente (Possui restricoes: nao pode puxar na diagonal, nao pode puxar em paredes, players, itens nao "andaveis" ou pz). A chance do jogador conseguir puxar o outro eh configuravel. Quando um jogador puxa o outro, tem chance de vir junto um monstro (configuravel). Quando o item falha, tem uma chance de o jogador puxar um Bandit ao inves do player. Tem um intervalo (exhaustition) configuravel entre os usos Tem varios efeitos legais. Como instalar: crie um arquivo chamado ppaction.lua em data/actions/scripts e coloque esse codigo: Em data/actions/actions.xml coloque essa tag: <action itemid="8306" event="script" value="ppaction.lua" allowfaruse="1"/> Eu escolhi o item com id 8306 pq ele combina com o efeito que tem quando o jogador eh puxado. Como o efeito eh configuravel, vc pode mudar o item que vai ser usado. Mas lembre-se: o item deve ser de "Use with" e nao se pode tirar o allowfaruse="1" da tag. Espero que tenham gostado Jaja vou postar um video mostrando ele em acao. PS: Nao estou conseguindo por Spoiler, alguem sabe pq?
- 3 replies
-
- player pull action
- puxar
- (and 4 more)