Ir para conteúdo

Gold Do Loot Vai Para O Banco


Lolksky

Posts Recomendados

Servidor utilizado: Baiak yourots

Versão: [8.60]

Categoria: creature script (eu acho)

 

Gostaria de um script como já diz o título, manda-se o loot do monstro pro bank do player.

Ex.: mato um Demon e ele dropa 100 gold coins, ao invez de eu precisar jogar na BP o money, ele já fosse diretamente pro bank.

Adcional1: SE POSSíVEL, colocar uma talk action pro player escolher se quer ou não que o sistema seja acionado (ex.: !juntar on/off)

Adcional2: aparecer a msg no DEFAULT (+ "money do loot" adcionado ao banco")

 

Obrigado desde já meus amores \o/

Editado por Lolksky
Link para o comentário
Compartilhar em outros sites

Abra a pasta creaturescripts/scripts do seu ot e crie um arquivo com nome de autoloot.lua e cole o seguinte código:

 

    local configs = {
   	ids = {2148, 2152, 2160}, -- adicionado somente os dos dinheiros, mais pode adicionar qual id quiser.
   	premium = true -- só premium usar o Auto loot ? [true ou false]
   }

   function getItemsInContainerById(container, itemid)
       local items = {}
       if getContainerSize(container) > 0 then
           for slot=0, (getContainerSize(container)-1) do
               local item = getContainerItem(container, slot)
               if isContainer(item.uid) then
                   local itemsbag = getItemsInContainerById(item.uid, itemid)
                   for i=0, #itemsbag do
                       table.insert(items, itemsbag[i])
                   end
               else
                   if itemid == item.itemid then
                       table.insert(items, item.uid)
                   end
               end
           end
       end
       return items
   end

   function autoGold(cid, pos, stack)
   	if stack > 255 then return true end
   	local position = {x = pos.x, y = pos.y, z = pos.z, stackpos = stack}
   	local tile = getThingFromPos(position)
   	if isCorpse(tile.uid) then
   		corpse = tile
   	else
   		autoGold(cid, pos, stack + 1)
   	end
   	if corpse ~= nil then
   		for _, idmoney in pairs(configs.ids) do
   			tab = getItemsInContainerById(corpse.uid, idmoney)
   			if #tab ~= 0 then
   				for _, uid in pairs(tab) do
   					item = getThing(uid)
   					doPlayerAddItem(cid, idmoney, item.type)
   					doRemoveItem(item.uid, item.type)
   				end
   			end
   		end
   	end
   end

   function onKill(cid, target)
   	if not isPremium(cid) and configs.premium then return true end
   	return addEvent(autoGold, 10, cid, getCreaturePosition(target), 0)
   end

 

 

 

Na mesma pasta procure pelo login.lua abra-o, e antes de return true adicione esta linha:

 

    registerCreatureEvent(cid, "AutoLoot")

 

 

 

Agora volte na pasta creaturescripts e procure o arquivo creaturescripts.xml e adicione a tag:

 

    <event type="kill" name="AutoLoot" event="script" value="AutoLoot.lua"/>

 

 

 

Bom para configurar os items que vão ter o loot automático é só abrir o arquivo autoloot.lua e esta logo no começo as configurações:

 

    local configs = {
   	ids = {2148, 2152, 2160}, -- adicionado somente os dos dinheiros, mais pode adicionar qual id quiser.
   	premium = true -- só premium usar o Auto loot ? [true ou false]
   }

 

 

Tambem quero avisar que o script fica mais funcional em server 9.1 por causa do sistema de juntar o dinheiro sozim, fica muito legal, se usar em uma versão mais antiga, funcionara normal, mais ira fazer um pouco de bagunça na sua bag, hehehehe

 

 

Creditos 100% Xotservx

Link para o comentário
Compartilhar em outros sites

@Mulizeu

@Snokiuthu

 

Não é isso que eu quero, tlavez voces nao tenham entendido. Esses scripts eu já vi eles.

O que eu quero é que ao matar o bicho, o loot dele (money) vai pro balance do player, Nao pra BP... ou seja, mato o bicho automaticamente o dinheiro é somado no balance/bank (e claro, que o dinheiro do loot some)

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...