zimbituba 17 Postado Abril 22, 2008 Share Postado Abril 22, 2008 (editado) Primeiro não sei se é aqui que devo postar eu ia postar em tutoriais de script mais tava dando erro dizendo que eu não podia postar lá então caso não seja aqui peço aos moderadores que movam o tópico para a sessão correta. E também não achei aqui no fórum se tiver me descupem. créditos vão para: LuNaTiC - por criar o tutorial ( não é do Xtibia) Shynzo - por trazer ao xtibia Então agora vamos começar: Existem muitas formas de troca, que muita gente não sabe como colocar, geral as pessoas tentam colocar : buy(cid,2455,1,0)sell(cid,2455,1,0) Mas sempre dava a mesma coisa, ele sempre pega o item sem devolver um.... O Script de troca é esse: elseif talk_state == 1 thenif msgcontains(msg, 'yes') then itemstatus = doPlayerRemoveItem(cid,2379,1) if itemstatus == 0 then selfSay('Sorry, you not have this item.') else doPlayerAddItem(cid,2148,2) selfSay('Thanks for this item.') end end talk_state = 0 Explicando: Mensagem que o player irá dizer para a troca, no caso, eu fiz um exemplo de uma confirmação. Esse comando serve para remover o item do player, no caso, uma dagger. No caso, ai está o tal comando de se o player não tiver o item, ele não trocara o item. Essa mensagem o NPC falará quando o player não tiver o item para a troca. Esse comando server para adicionar um item ao player, no caço 2 gps pela dagger. Essa mensagem o NPC irá falar quando vocês trocarem o item. Importante¹: Se for para adicionar mais de 100 gold tem que colocar 2 comando, exemplo: doPlayerAddItem(cid,2148,43) e doPlayerAddItem(cid,2152,2), no caso o player ganhara 243 gps. Aqui está um exemplo de um NPC de Troca: local focus = 0local talk_start = 0 local target = 0 local following = false local attacking = false function onThingMove(creature, thing, oldpos, oldstackpos) end function onCreatureAppear(creature) end function onCreatureDisappear(cid, pos) if focus == cid then selfSay('Good bye then.') focus = 0 talk_start = 0 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 onCreatureSay(cid, type, msg) msg = string.lower(msg) if (msgcontains(msg, 'hi') and (focus == 0)) and getDistanceToCreature(cid) < 4 then selfSay('Olá ' .. creatureGetName(cid) .. '! Eu te dou um Demon Shield por um Royal Helmet.') focus = cid talk_start = os.clock() elseif msgcontains(msg, 'hi') and (focus ~= cid) and getDistanceToCreature(cid) < 4 then selfSay('Sorry, ' .. creatureGetName(cid) .. '! I talk to you in a minute.') elseif focus == cid then talk_start = os.clock() if msgcontains(msg, 'troca') or msgcontains(msg,'trade') then if queststatus == -1 then selfSay('Você quer trocar um royal helmet por um demon shield?') talk_state = 1 elseif msgcontains(msg, 'exemplo de quest') or msgcontains(msg,'exemplo de quest.') then selfSay('Você quer trocar um royal helmet por um demon shield?') talk_state = 2 elseif talk_state == 1 then if msgcontains(msg, 'yes') then itemstatus = doPlayerRemoveItem(cid,2498,1) <------ Item que será removido para trocar if itemstatus == 0 then selfSay('Sorry, you not have items.') else doPlayerAddItem(cid,2520,2) <---- Item que o player ganhará na troca selfSay('Thanks for items.') end end talk_state = 0 elseif talk_state == 2 then if msgcontains(msg, 'yes') then itemstatus = doPlayerRemoveItem(cid,2498,1) if itemstatus == 0 then selfSay('Sorry, you not have items.') else doPlayerAddItem(cid,2520,2) selfSay('Thanks for items.') end end talk_state = 0 elseif msgcontains(msg, 'bye') and getDistanceToCreature(cid) < 4 then selfSay('Good bye, ' .. creatureGetName(cid) .. '!') focus = 0 talk_start = 0 end end end function onCreatureChangeOutfit(creature) end function onThink() if (os.clock() - talk_start) > 30 then if focus > 0 then selfSay('Next Please...') end focus = 0 end if focus ~= 0 then if getDistanceToCreature(focus) > 5 then selfSay('Good bye then.') focus = 0 end end end Agora é só configura como eu disse acima.... Agora vou ensinar como o NPC falará com você apenas se você tiver feito alguma quest. Depois de: if (msgcontains(msg, 'hi') and focus == 0) and getDistanceToCreature(cid) < 4 Adicione: and queststatus > 0 then Ficando assim: if (msgcontains(msg, 'hi') and focus == 0) and getDistanceToCreature(cid) < 4 and queststatus > 0 then Em cima adicione isto: queststatus = getPlayerStorageValue(cid,2520) Esse é o StorageValue da quest, se você fez ela ou não... Em baixo de: elseif string.find(msg, '(%a*)bye(%a*)') and getDistanceToCreature(cid) < 4 thenselfSay('Bye human.') focus = 0 talk_start = 0 end Adicione isto: else selfSay('Você não pode conversar comigo sem fazer a quest') Mensagem que irá aparecer se o player não tiver feito a quest Pronto, estou acabando meu tutorial por aqui, espero ter ajudado as pessoas a fazerem seu server com mais RPG do que o normal. Editado Abril 22, 2008 por Shynzo Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/ Compartilhar em outros sites More sharing options...
Orange 0 Postado Abril 22, 2008 Share Postado Abril 22, 2008 Aprovado -- Nota 10 Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/#findComment-521083 Compartilhar em outros sites More sharing options...
Slinix 1 Postado Abril 22, 2008 Share Postado Abril 22, 2008 GoGoGo , Vai Ajudar Muitos , Inclusive um Pouco eu , que não sou tão eperte , Go go go team , Tks Shynzo. Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/#findComment-521096 Compartilhar em outros sites More sharing options...
maximusot 1 Postado Abril 22, 2008 Share Postado Abril 22, 2008 (editado) Valeu por trazer ao xtibia. (pelomenos você colocou os créditos) nota: 8 APROVADO só me faça uma favor, mude isso: tenqueEm cima dicione isto: para isso: tem queEm cima adiciona isto: Editado Abril 22, 2008 por maximusot Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/#findComment-521141 Compartilhar em outros sites More sharing options...
zimbituba 17 Postado Abril 22, 2008 Autor Share Postado Abril 22, 2008 hehe ja vou rrumar é pq fiz na madruga tudo no escuro e outra coisa tudo que eu posto no Xtibia coloco os créditos pois nao acho justo roubaros créditos dos outros Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/#findComment-521213 Compartilhar em outros sites More sharing options...
gabrifer 0 Postado Abril 24, 2008 Share Postado Abril 24, 2008 Muito bom! Organizado e bem explicado! Parabéns e APROVADO! Abraços, Escalador. Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/#findComment-522643 Compartilhar em outros sites More sharing options...
kruxdudu 0 Postado Abril 26, 2008 Share Postado Abril 26, 2008 Precisa dizer que vc me ajudou denovo? (Como sempre) auhauha Parabéns caraaa Vc sempre mi ajuda Abraços! Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/#findComment-523566 Compartilhar em outros sites More sharing options...
Flyw 0 Postado Abril 26, 2008 Share Postado Abril 26, 2008 Cabei de vira seu fã >.< Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/#findComment-523584 Compartilhar em outros sites More sharing options...
zimbituba 17 Postado Abril 26, 2008 Autor Share Postado Abril 26, 2008 o0 mais um fan omg Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/#findComment-523646 Compartilhar em outros sites More sharing options...
PedroHEll 0 Postado Abril 27, 2008 Share Postado Abril 27, 2008 Aeeew muito bom. =DD Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/#findComment-523915 Compartilhar em outros sites More sharing options...
zimbituba 17 Postado Julho 31, 2008 Autor Share Postado Julho 31, 2008 Valeu galera comenta ai plz Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/#findComment-593342 Compartilhar em outros sites More sharing options...
FelipeAugustoGuimaraesGome 0 Postado Julho 31, 2008 Share Postado Julho 31, 2008 Shynzo Seu safado kkkkkkkkk copiou minha letra ne kkkkk tem problema nao mas eu gostei desse NPC muito bom xD Flws Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/#findComment-593749 Compartilhar em outros sites More sharing options...
furiavr 1 Postado Agosto 1, 2008 Share Postado Agosto 1, 2008 Nossa vey parabéns mais uma vez...muito bom mesmo!!! Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/#findComment-594768 Compartilhar em outros sites More sharing options...
gto222 0 Postado Agosto 4, 2008 Share Postado Agosto 4, 2008 nossa muito bom o tuto vai ajuda muita gente vlw Link para o comentário https://xtibia.com/forum/topic/82898-npc-para-servers-com-rpg/#findComment-597351 Compartilhar em outros sites More sharing options...
Posts Recomendados