Postado Janeiro 17, 2018 7 anos Boa tarde, gostaria de uma script de npc que troque "X" item por dias premium(igual o npc de diamonds do antigo svke), pode ser 1 unidade para 1 dia! Uso a base TFS 0.3.6, agradecido!
Postado Janeiro 20, 2018 7 anos Na pasta npc adicione o seunpc.xml com o seguinte conteúdo: <?xml version="1.0"?> <npc name="SeuNPC" script="data/npc/scripts/seunpc.lua" walkinterval="50000" floorchange="0"> <health now="100" max="100"/> <look type="63" head="0" body="0" legs="0" feet="0" addons="3"/> <parameters> <parameter key="message_greet" value="Olá! |PLAYERNAME|, deseja {trocar} seus diamonds por dias premium?..." /> </parameters> </npc> Em npc/scripts/ adicione o seunpc.lua com o seguinte conteúdo: config = { item = 2145 -- id do diamond } 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 if (msgcontains(msg, 'TROCAR') or msgcontains(msg, 'trocar')) then npcHandler:say("Quantos diamonds você deseja trocar por dias premium?", cid) talkState[cid] = 1 elseif talkState[cid] == 1 then msg = tonumber(msg) if(doPlayerRemoveItem(cid,config.item,msg) and isNumber(msg) and msg > 0)then doPlayerAddPremiumDays(cid, msg) str = "Agora você possui mais " .. msg .. " dia(s) premium." else str = "Você não possui essa quantia." end npcHandler:say(str, cid) end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Programador PHP, Lua, Java, database administrator. "Nada é verdade, tudo é permitido." Requiescat in pace.
Postado Janeiro 20, 2018 7 anos Autor @Nazo Filé hein, no caso a quantidade de diamonds que tiver será trocável por dias premium né isso? exemplo: o jogador tem 6 diamonds, serão 6 dias premium?
Postado Janeiro 20, 2018 7 anos Basicamente, @tavarb, o querido player digita quantos diamonds ele quer trocar por premmy (onde cada diamond é um dia premmy), e o npc troca pra ele Programador PHP, Lua, Java, database administrator. "Nada é verdade, tudo é permitido." Requiescat in pace.
Postado Janeiro 20, 2018 7 anos Autor Perfeito, @Nazo , tem como adaptar para colocar uma quantidade mínima de 7 diamonds? Mas mantendo o sistema de (onde cada diamond é um dia premmy).
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.