Postado Dezembro 25, 2014 10 anos Autor Em 25/12/2014 em 00:36, danihcv disse: Vc n tem.idéia do q qr n amg? O @nogard fez um system de presente. Procura ae, agr to no cell ai complica passar... :s Qualquer coisa amigo, pode até ser por NPC Venha para a evolução do mapa HEROSERV -- Versão 8.60 - Faça parte dessa família: http://kaiakserv.com
Postado Dezembro 25, 2014 10 anos Solução Aqui, pensei em fazer um npc papai noel que dá items aleatorios. Va na pasta data/npc e crie um arquivo Papai Noel.xml e coloque isso dentro: Mostrar conteúdo oculto <?xml version="1.0" encoding="UTF-8"?> <npc name="Papai Noel" script="data/npc/scripts/papai_noel.lua" walkinterval="1500" speed="100" walkradius="2" floorchange="0"> <health max="100" now="100"/> <look type="160" head="0" body="113" legs="94" feet="132" addons="0" mount="0"/> <parameters> <!--MESSAGES--> <parameter key="message_greet" value="Hohoho, |PLAYERNAME| bem-vindo. Voce gostaria de um presente?"/> <parameter key="message_farewell" value="Hohoho, tenha um feliz natal, |PLAYERNAME|."/> </parameters> </npc> Agora va na pasta data/npc/scripts e crie um arquivo chamado papai_noel.lua e coloque isso dentro: Mostrar conteúdo oculto local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 local config = { --IDs dos items que irão ser sorteados [30] = {2152}, [31] = {15492}, [32] = {9971}, [33] = {7591}, [34] = {7590}, [35] = {15546}, [36] = {15487}, [37] = {5022}, [38] = {2144} } function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end if msgcontains(msg, 'sim') then if getPlayerStorageValue(cid, 6966) ~= 1 then local chance_growing = {} for chance, _ in pairs(config) do table.insert(chance_growing, chance) end table.sort(chance_growing, function(a, b) return a > b end) local chance = 0 for _, v in pairs(chance_growing) do if math.random(100) < v then chance = v break end end local item = config[chance] if item then doPlayerAddItem(cid, item[1]) doSendMagicEffect(getThingPos(cid), 13) end selfSay('Aqui esta! Feliz natal!', cid) setPlayerStorageValue(cid, 6966, 1) else selfSay('Voce ja pegou seu presente. Agora espalhe o espirito do natal!', cid) end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Vc configura os items aqui: Citar local config = { --IDs dos items que irão ser sorteados [30] = {2152}, [31] = {15492}, [32] = {9971}, [33] = {7591}, [34] = {7590}, [35] = {15546}, [36] = {15487}, [37] = {5022}, [38] = {2144} } Vá colocando os ids dos items. Só peguei um script que tinha aqui de items aleatorios com probabilidade e adaptei pra o npc. (A probabilidade é feita assim, quanto mais em baixo da lista de items o item estiver, maior a chance de ele ser sorteado.) Também achei esse outro npc de natal que dá items: http://www.tibiaking.com/forum/topic/20494-npc-de-natal/ Se ajudei, REP+ pf Editado Dezembro 25, 2014 10 anos por danihcv (veja o histórico de edições) Te ajudei?? REP + e ficamos quites... http://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'> Atenciosamente, Daniel. Abraços! Meus tutoriais: Programação: Resolvendo QUALQUER erro na data base. Scripts (system's, creaturescripts, mod's, NPC's, etc): (Sistema) GOD Ambient Light Full. Adicionando novas mounts ao servidor [NPC] Papai Noel que dá presente todo ano. Web-site: Resolvendo problema de caracteres especiais em PHP Formatando textos em PHP! Mudando a cor, tamanho, fonte, etc. Criando e configurando tabelas para paginas PHP
Postado Dezembro 25, 2014 10 anos Autor Em 25/12/2014 em 03:07, danihcv disse: Aqui, pensei em fazer um npc papai noel que dá items aleatorios. Va na pasta data/npc e crie um arquivo Papai Noel.xml e coloque isso dentro: Mostrar conteúdo oculto Mostrar conteúdo oculto <?xml version="1.0" encoding="UTF-8"?> <npc name="Papai Noel" script="data/npc/scripts/papai_noel.lua" walkinterval="1500" speed="100" walkradius="2" floorchange="0"> <health max="100" now="100"/> <look type="160" head="0" body="113" legs="94" feet="132" addons="0" mount="0"/> <parameters> <!--MESSAGES--> <parameter key="message_greet" value="Hohoho, |PLAYERNAME| bem-vindo. Voce gostaria de um presente?"/> <parameter key="message_farewell" value="Hohoho, tenha um feliz natal, |PLAYERNAME|."/> </parameters> </npc> Agora va na pasta data/npc/scripts e crie um arquivo chamado papai_noel.lua e coloque isso dentro: Mostrar conteúdo oculto Mostrar conteúdo oculto local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 local config = { --IDs dos items que irão ser sorteados [30] = {2152}, [31] = {15492}, [32] = {9971}, [33] = {7591}, [34] = {7590}, [35] = {15546}, [36] = {15487}, [37] = {5022}, [38] = {2144} } function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end if msgcontains(msg, 'sim') then if getPlayerStorageValue(cid, 6966) ~= 1 then local chance_growing = {} for chance, _ in pairs(config) do table.insert(chance_growing, chance) end table.sort(chance_growing, function(a, b) return a > b end) local chance = 0 for _, v in pairs(chance_growing) do if math.random(100) < v then chance = v break end end local item = config[chance] if item then doPlayerAddItem(cid, item[1]) doSendMagicEffect(getThingPos(cid), 13) end selfSay('Aqui esta! Feliz natal!', cid) setPlayerStorageValue(cid, 6966, 1) else selfSay('Voce ja pegou seu presente. Agora espalhe o espirito do natal!', cid) end end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Vc configura os items aqui: Vá colocando os ids dos items. Só peguei um script que tinha aqui de items aleatorios com probabilidade e adaptei pra o npc. (A probabilidade é feita assim, quanto mais em baixo da lista de items o item estiver, maior a chance de ele ser sorteado.) Também achei esse outro npc de natal que dá items: http://www.tibiaking.com/forum/topic/20494-npc-de-natal/ Se ajudei, REP+ pf Boa vlw Venha para a evolução do mapa HEROSERV -- Versão 8.60 - Faça parte dessa família: http://kaiakserv.com
Postado Dezembro 29, 2014 10 anos mais este script o player so pode pegar 1 vez? Venha curti o Pokémon Underwater! FB/PokemonUnderwater
Postado Dezembro 30, 2014 10 anos @Lord Stryton, sim apenas uma vez. Se quiser que possa pegar indefinidamente basta usar esse papai_noel.lua no lugar do outro: Mostrar conteúdo oculto local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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 local config = { --IDs dos items que irão ser sorteados [30] = {2152}, [31] = {15492}, [32] = {9971}, [33] = {7591}, [34] = {7590}, [35] = {15546}, [36] = {15487}, [37] = {5022}, [38] = {2144} } function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end if msgcontains(msg, 'sim') then local chance_growing = {} for chance, _ in pairs(config) do table.insert(chance_growing, chance) end table.sort(chance_growing, function(a, b) return a > b end) local chance = 0 for _, v in pairs(chance_growing) do if math.random(100) < v then chance = v break end end local item = config[chance] if item then doPlayerAddItem(cid, item[1]) doSendMagicEffect(getThingPos(cid), 13) end selfSay('Aqui esta! Feliz natal!', cid) end end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) Editado Dezembro 30, 2014 10 anos por danihcv (veja o histórico de edições) Te ajudei?? REP + e ficamos quites... http://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'> Atenciosamente, Daniel. Abraços! Meus tutoriais: Programação: Resolvendo QUALQUER erro na data base. Scripts (system's, creaturescripts, mod's, NPC's, etc): (Sistema) GOD Ambient Light Full. Adicionando novas mounts ao servidor [NPC] Papai Noel que dá presente todo ano. Web-site: Resolvendo problema de caracteres especiais em PHP Formatando textos em PHP! Mudando a cor, tamanho, fonte, etc. Criando e configurando tabelas para paginas PHP
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.