Postado Março 5, 2015 10 anos WTF ? ? ? é possível sim... Ele disse que aceita outras sugestões e falou que não estava conseguindo colocar o item na quest pois não aparecia no RME, então passei o script pra ao inves dele ter que adicionar o item direito no baú da quest, ele adicionar a uniqueid. ➥ Regras | Seções OTServ | Seções BOT
Postado Março 5, 2015 10 anos Autor Crie 1 uniqueid para usar no baú: Vá em "Data/actions/scripts" copie e cole 1 arquivo .xml, renomeie ele para questitem.xml e cole isso dentro: local config = { recompensa = 2493, -- ID da recompensa. nitem = "Item test.", -- Nome da recompensa. storage = 50029 -- Se for criar outra quest com esse mesmo script, altere a storage pra 1 diferente. } function onUse(cid, item, frompos, item2, topos) if getPlayerStorageValue(cid,config.storage) == -1 then doPlayerSendTextMessage(cid,25,"You have found a "..config.nitem..".") doPlayerAddItem(cid,config.recompensa,1) setPlayerStorageValue(cid,config.storage,1) else doPlayerSendTextMessage(cid,25,"The is empty.") end return true end Agora vá em "Data/actions/actions.xml" e adicione essa linha: <action uniqueid="50029" script="questitem.lua"/> Ai lá no Remere's você clica com o direito no baú, clica em properties e coloca 50029 em Unique ID. Deu certo mano, obrigado denovo...kkkkkk Reputado!
Postado Março 5, 2015 10 anos Acho que vc soh precisava trocar o intens.otb e o itens.xml do seu remare's... Porém eu sempre faço quests via action, mais tranquilo pra editar @Wakon, , não eh necessário pegar o nome do item, pois temos a função ''getItemName(itemid)'', que pega o nome do item pelo itemid... Portanto, pode tirar essa linha nitem = "Item test.", -- Nome da recompensa. e, nessa linha doPlayerSendTextMessage(cid,25,"You have found a "..config.nitem..".") alterar ''config.nitem'' para ''getItemName(config.recompensa)'', ficando assim doPlayerSendTextMessage(cid,25,"You have found a "..getItemName(config.recompensa)..".") Editado Março 5, 2015 10 anos por david0703 (veja o histórico de edições) Atenciosamente, David Araujo Meu Conteúdo Fui útil? Gostou? Faça uma doação. "É errando que se erra." "Gambiarras resolvem instantemente, porém podem complicar em problemas futuros." "Cada dia vivido é um aprendizado."
Postado Março 5, 2015 10 anos Acho que vc soh precisava trocar o intens.otb e o itens.xml do seu remare's... Porém eu sempre faço quests via action, mais tranquilo pra editar @Wakon, , não eh necessário pegar o nome do item, pois temos a função ''getItemName(itemid)'', que pega o nome do item pelo itemid... Portanto, pode tirar essa linha nitem = "Item test.", -- Nome da recompensa. e, nessa linha doPlayerSendTextMessage(cid,25,"You have found a "..config.nitem..".") alterar ''config.nitem'' para ''getItemName(config.recompensa)'', ficando assim doPlayerSendTextMessage(cid,25,"You have found a "..getItemName(config.recompensa)..".") Ah fica mais organizado e eu testei essa função ai e o servidor não reconhece :S ➥ Regras | Seções OTServ | Seções BOT
Postado Março 5, 2015 10 anos ah sim, não são todos os servidores que tem... essa seria a função- getItemDescriptions(item).name na pasta lib, em algum arquivo, acrescente isso function getItemName(uid) return getItemDescriptions(uid).name end caso não queira adicionar a função na lib, troque getItemName(config.recompensa) por getItemDescriptions(config.recompensa).name e, para ficar organizado, escreva o nome do item apos o id, ex. recompensa = 2493, --Diamond Editado Março 5, 2015 10 anos por david0703 (veja o histórico de edições) Atenciosamente, David Araujo Meu Conteúdo Fui útil? Gostou? Faça uma doação. "É errando que se erra." "Gambiarras resolvem instantemente, porém podem complicar em problemas futuros." "Cada dia vivido é um aprendizado."
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.