Ir para conteúdo

Auto Loot


Posts Recomendados

USO OT 8.60 TESTEI COM VARIOS EQUIPES, POR EXEMPLO O DEMON SHIELD E NAO PEGOU, TESTEI COM WORM E HAM E PEGOU.

 

sO DA LOOT EM COISAS USAVEIS? EQUIPES NAO PEGA? TEM COMO COLOCAR PRA PEGAR? E PRA POR PRA GOLD TBM? PRA TODOS OS ITENS? A E OUTRA COISA COM OS WORMS POR EXEMPLO ELE SO JUNTA 100 E DEPOIS NAO PEGA MAIS. DA PRA POR PRA IR JUNTANDO DE 100 EM 100 E SO NAO PEGAR QUANDO A BAG TIVER CHEIA?

É PRA EQUIPES NAO PEGA =/

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

Eu consegui equipar: Golden Armor, Golden Legs, Demon Helmet, Steel Boots... Tem como configurar equipe sim.

 

No meu ot, eu coloquei o maximo de 5 items, mais quando atinge 5 itens e eu quero remover 1 não tem como, fala que está cheio. '-'

Link para o comentário
Compartilhar em outros sites

Eu consegui equipar: Golden Armor, Golden Legs, Demon Helmet, Steel Boots... Tem como configurar equipe sim.

 

No meu ot, eu coloquei o maximo de 5 items, mais quando atinge 5 itens e eu quero remover 1 não tem como, fala que está cheio. '-'

 

pode me dizer como configura para pegar equip, pq aki eu coloquei /aloot add:demon shield, aparece na lista do loot mas msm assim nao pega o item.

Link para o comentário
Compartilhar em outros sites

Eu consegui equipar: Golden Armor, Golden Legs, Demon Helmet, Steel Boots... Tem como configurar equipe sim.

 

No meu ot, eu coloquei o maximo de 5 items, mais quando atinge 5 itens e eu quero remover 1 não tem como, fala que está cheio. '-'

 

Cara vamo se dizer q esse script é DEMO, em outras palavras ele ainda tem varios bug q nem nosso amigo disse junta 100 e n pega ++

mais na verdade pega sim ele so tenta junta o q pega com os 100 que ja tem =D

 

um script bem compativel é do autouse do edu vc junta 100 moeda e transforma em 1 de platium, dai é meio dificil de da bug, so se vc tiver 99 moeda

drpa 25 do monster ele vai pega so 1 e da use vc vai perde as outras+ mais fica bem melhor 1 script assim xD

Link para o comentário
Compartilhar em outros sites

Alguem pode modificar esse script pra pegar equipes, e que nao fique com tantos bugs? Seria de grande ajuda pra muita gente. obs: aki ele nao conseguiu pegar gold =/

Link para o comentário
Compartilhar em outros sites

  • 3 months later...

Esse Sitema de Vocês ai ! Só funciona pra determinados tipos de corpse, por exemplo aqueles preto de gahz nao funciona ! alguns demons também não e agora ?

Link para o comentário
Compartilhar em outros sites

  • 1 month later...
  • 2 weeks later...

CRIADOR : JANO

Retirado: Outro forum

Script: Auto Loot *-*

 

creaturescripts.xml

<event type="login" name="aloot_reg" event="script" value="aloot.lua"/>
<event type="kill" name="aloot_kill" event="script" value="aloot.lua"/>  

creaturescripts/scritps

aloot.lua

function onLogin(cid)
registerCreatureEvent(cid, "aloot_kill")
return true
end

local stor = 7575

function autoloot(cid, target, pos)
local function doStack(cid, itemid, new)
	local count = getPlayerItemCount(cid, itemid)
	if (count > 100) then
		count = count - math.floor(count / 100) * 100
	end
	local newCount = count + new
	if (count ~= 0) then
		local find = getPlayerItemById(cid, true, itemid, count).uid
		if (find > 0) then
			doRemoveItem(find)
		else
			newCount = new
		end
	end
	local item = doCreateItemEx(itemid, newCount)
	doPlayerAddItemEx(cid, item, true)
end

local function scanContainer(cid, uid, list)
	for k = (getContainerSize(uid) - 1), 0, -1 do
		local tmp = getContainerItem(uid, k)
		if (isInArray(list, tmp.itemid)) then
			if isItemStackable(tmp.itemid) and (getPlayerItemCount(cid, tmp.itemid) > 0) then
				doStack(cid, tmp.itemid, tmp.type)
			else
				local item = doCreateItemEx(tmp.itemid, tmp.type)
				doPlayerAddItemEx(cid, item, true)
			end
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Looted ' .. tmp.type .. ' ' .. getItemNameById(tmp.itemid) .. '.')
			doRemoveItem(tmp.uid)
		elseif isContainer(tmp.uid) then
			scanContainer(cid, tmp.uid, list)
		end
	end
end

local items = {}
for i = getTileInfo(pos).items, 1, -1 do
	pos.stackpos = i
	table.insert(items, getThingFromPos(pos))
end

if (#items == 0) then
	return
end

local corpse = -1
for _, item in ipairs(items) do
	local name = getItemName(item.uid):lower()
	if name:find(target:lower()) then
		corpse = item.uid
		break
	end
end

if (corpse ~= -1) and isContainer(corpse) then
	scanContainer(cid, corpse, tostring(getPlayerStorageValue(cid, stor)):gsub('_', ''):explode(','))
end
end

function onKill(cid, target, lastHit)
if not isPlayer(target) then
	local infos = getPlayerStorageValue(cid, stor)
	if (infos == -1) then
		return true
	end
	local list = tostring(infos):explode(',')
	if (#list == 0) then
		return true
	end
	addEvent(autoloot, 150, cid, getCreatureName(target), getCreaturePosition(target))
end
return true
end

talkactios.xml

<talkaction words="/aloot" hide="yes" event="script" value="aloot.lua"/>  

 

Talkaction/scrips

local stor, limit = 7575, 5 --storage, limit to add.

local allow_container = false --empty! not looted with items, atleast for now.

function onSay(cid, words, param)
local expl = param:explode(':')
local action, rst = expl[1], expl[2]
if (action:lower() == 'check') then
	local infos, list = getPlayerStorageValue(cid, stor), {}
	if (infos ~= -1) then
		list = tostring(infos):explode(',')
	end
	local txt = 'Autoloot List:\n'
	if (#list > 0) then
		for k, id in ipairs(list) do
			id = id:gsub('_', '')
			if tonumber(id) then
				txt = txt .. getItemNameById(tonumber(id)) .. ((k < #list) and '\n' or '')
			end
		end
	else
		txt = 'Empty'
	end
	doPlayerPopupFYI(cid, txt)
elseif (action:lower() == 'add') then
	local infos, list = getPlayerStorageValue(cid, stor), {}
	if (infos ~= -1) then
		list = tostring(infos):gsub('_', ''):explode(',')
	end
	if (#list >= limit) then
		return doPlayerSendCancel(cid, 'You already have ' .. limit .. ' autolooting items.')
	end
	local item = tonumber(rst)
	if not item then
		item = getItemIdByName(rst, false)
		if not item then
			return doPlayerSendCancel(cid, 'not valid item.')
		end
	end
	if not allow_container and isItemContainer(item) then
		return doPlayerSendCancel(cid, 'this item can not be autolooted.')
	end
	local attrs = getItemInfo(item)
	if not attrs then
		return doPlayerSendCancel(cid, 'not valid item.')
	elseif not attrs.movable or not attrs.pickupable then
		return doPlayerSendCancel(cid, 'this item can not be autolooted.')
	end
	if isInArray(list, item) then
		return doPlayerSendCancel(cid, 'already added.')
	end
	table.insert(list, tostring(item))
	local new = ''
	for v, id in ipairs(list) do
		new = new .. '_' .. id:gsub('_' ,'') .. ((v < #list) and ',' or '')
	end
	doPlayerSetStorageValue(cid, stor, tostring(new))
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Item >>' .. getItemNameById(item) .. '<< has been added to the autoloot list.')
elseif (action:lower() == 'remove') then
	local infos, list = getPlayerStorageValue(cid, stor), {}
	if (infos ~= -1) then
		list = tostring(infos):gsub('_', ''):explode(',')
	end
	if (#list == 0) then
		return doPlayerSendCancel(cid, 'You dont have any item added.')
	end
	if (#list >= limit) then
		return doPlayerSendCancel(cid, 'You already have ' .. limit .. ' autolooting items.')
	end
	local item = tonumber(rst)
	if not item then
		item = getItemIdByName(rst, false)
		if not item then
			return doPlayerSendCancel(cid, 'not valid item.')
		end
	end
	if not isInArray(list, item) then
		return doPlayerSendCancel(cid, 'This item is not in the list.')
	end
	local new = ''
	for v, id in ipairs(list) do
		if (tonumber(id) ~= item) then
			new = new .. '_' .. id:gsub('_' ,'') .. ((v < #list) and ',' or '')
		end
	end
	doPlayerSetStorageValue(cid, stor, tostring(new))
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, 'Item >>' .. getItemNameById(item) .. '<< removed from the autoloot list.')
end		
return true
end

 

Usando

 

/aloot check

Cheka a Lista dos Loots

 

/aloot add:itemid ou nome do item

 

Exemplo

/aloot add:worm

/aloot add:2170

 

16:42 Item >>worm<< has been added to the autoloot list.

 

Para remover

/aloot remove:worm

/aloot remove:2170

 

Exemplo Testado:

16:41 Looted 2 gold coin.

16:41 Looted 1 cheese.

 

é isso pessoal gosto da + Rep

esse script ja foi postado ake no fórum pelo Jack Bolin

Link para o comentário
Compartilhar em outros sites

  • 3 weeks later...
  • 2 weeks later...

E como o amigo @gaazin ali disse, esse sistema só funciona para monstros que seu corpese tem o mesmo nome do monstro, ex:

Orc = Dead Orc, logo funciona perfeitamente,

 

porem se,

 

Necromancer = Dead Humam , o script não funciona.

 

Tentem arrumar ai por favor, eu já viz de tudo não funciona!

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...