Ayron5 40 Postado Novembro 4, 2018 Share Postado Novembro 4, 2018 Dale! suave? deixo aqui um npc que fiz agora para meu servidor... Como fala no titulo, ele cobra uma certa quantia de dinheiro ou item, para dar uma informação, só configure certinho. É bem simples mas pode ajudar alguém Lembrando que está testado e funcionando 100% Vá em data/npc e crie um arquivo XML com o nome info e cole isso dentro... Spoiler <?xml version="1.0" encoding="UTF-8"?> <npc name="Info" script="info.lua" walkinterval="3000" floorchange="0" access="5" > <health now="150" max="150"/> <look type="664" head="0" body="114" legs="114" feet="0"/> <parameters> <parameter key="message_greet" value="Bem-vindo |PLAYERNAME| Posso te dar uma informação, Quer saber mais? diga {Quero}."/> <parameter key="message_farewell" value="Tchau! Vejo voce outra hora."/> </parameters> </npc> Salve e feche... Agora em data/npc/scripts crie um arquivo LUA com o nome info e cole dentro... Spoiler ---By: Ayron/Sepultura --- --- NPC que vende info 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 -- Conversa do player com npc if(msgcontains(msg, 'quero') or msgcontains(msg, 'Quero')) then selfSay('Eu sei de muitas coisas SOBRE TAL ASSUNTO, mas isso vai te custar algum trocado se quiser fale Aceito/aceito...', cid) elseif(msgcontains(msg, 'Aceito') or msgcontains(msg, 'aceito')) then selfSay('A informacao vai custar ten thousand dollar note, Voce vai querer?', cid) talkState[talkUser] = 1 -- confirmação da compra da info elseif(msgcontains(msg, 'yes') or (msgcontains(msg, 'sim')) and talkState[talkUser] == 1) then if(doPlayerRemoveItem(cid, 2160, 1) == true) then ----2160 o item no caso aqui/dinheiro e 1 é a quantidade precisa dele ---- doPlayerSendTextMessage(cid,22,"INFO... va ate o vale perto de uma pedra azul, la vc encontrara um bau de quest.") talkState[talkUser] = 0 else selfSay('Voce nao tem dinehro suficiente, volte depois.', cid) talkState[talkUser] = 0 end end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Bom, é só isso espero ajudar alguém, se ajudei deixa o REP! Aí pra fortalecer a amizade LEMBRANDO QUE DENTO DO ARQUIVO ESTÁ A EXPLICAÇÃO. xmaster0, Yan Liima e M i s s reagiu a isso 3 Link para o comentário Compartilhar em outros sites More sharing options...
KaboFlow 54 Postado Setembro 18, 2019 Share Postado Setembro 18, 2019 vo test mano Link para o comentário Compartilhar em outros sites More sharing options...
Turion Server 0 Postado Maio 17, 2021 Share Postado Maio 17, 2021 Work 100% thanks rep+ Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados