Postado Abril 28, 2016 9 anos Olá, Bom se eu estiver na área errada pfv me mova e obrigado! Não achei, esse NPC desse tipo aqui no Tk, e alguns que eu estava tentado editar sempre tava erro! Bom queria um NPC que dar um presente para os "iniciantes" mais apenas uma vez. Tipo NPC (Carlos), Player dar hi, ele fala. Olá | Playername|, então você quer ser um mestre pokémon!, haha tome esse presente. Tchauu Se o player tenta denovo pegar o Item com o NPC, o npc fala que o |playername| já pego o item. ID do Presente ( 2394 ) - Pokebolla normal E que tenha uma (12778) - Pokebag, As Pokebollas fique dentro da bag! Deixarei +rep claro
Postado Junho 1, 2016 8 anos Solução Boa noite, Crie o seu NPC.xml do jeito que preferir e coloque o script abaixo em seu arquivo .lua: Mostrar conteúdo oculto local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} function onCreatureAppear(cid) npcHandler:onCreatureAppear(cid) end function onCreatureDisappear(cid) npcHandler:onCreatureDisappear(cid) end function onCreatureSay(cid, type, msg) npcHandler:onCreatureSay(cid, type, msg) end function onThink() npcHandler:onThink() end function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid ------------- CONFIG ITENS -------------- local itemID = {id = 12778, count = 1} -- ID do ITEM, Quantidade /&/ Storage de Segurança local pokeBag = 2394 --------------- MESSAGENS -------------------------- if (msgcontains(msg, 'help') or msgcontains(msg, 'start')) then selfSay('Quer receber seu presente para iniciar a aventura agora?', cid) talkState[talkUser] = 1 elseif talkState[talkUser] == 1 then if (msgcontains(msg, 'sim') or msgcontains(msg, 'yes')) then if getPlayerStorageValue(cid, itemID.id) < 1 then if isItemStackable(itemID.id) then local bag = doPlayerAddItem(cid, pokeBag, 1) doAddContainerItem(bag, itemID.id, itemID.count) else local bag = doPlayerAddItem(cid, pokeBag, 1) for x = 1, itemID.count do doAddContainerItem(bag, itemID.id, 1) end end setPlayerStorageValue(cid, itemID.id, 1) selfSay('Muito bem, aqui está: .', cid) talkState[talkUser] = 0 else selfSay('Você já recebeu seu presente.', cid) talkState[talkUser] = 0 end else selfSay('Okay, see u later.', cid) talkState[talkUser] = 0 end end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Para configurar caso queira criar mais NPCs do gênero, basta alterar as linhas como mostra abaixo: local itemID = {id = 12778, count = 2} -- ID do ITEM, Quantidade /&/ Storage de Segurança local pokeBag = 2394 -- ID da Bag que será adicionada. Obs: Coloquei "count = 2" para adicionar dois itens, mas pode colocar a quantidade que quiser, que no seu caso será 1. Obs ²: Para ganhar os itens basta falar "start" ou "help" e confirmar com "yes". Poste se funcionou corretamente pois não testei. Abraços e Boa sorte. Editado Junho 1, 2016 8 anos por Adriano SwaTT (veja o histórico de edições)
Postado Junho 1, 2016 8 anos Autor Funcionar, Obrigado mais uma vez ! +REP Duvida senada, poder Fecha o Tópico! :D
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.