Ir para conteúdo
  • Cadastre-se

Pedido (Resolvido)Remover o item na backpack


Ir para solução Resolvido por Shiuns,

Posts Recomendados

 

Você tem o código disponível? Se tiver publique-o aqui: 

local onSell = function(cid, item, subType, amount, ignoreCap, inBackpacks)  
if items[item].sellPrice ~= 0 then  
doPlayerAddMoney(cid, items[item].sellPrice * amount)  
doPlayerRemoveItem(cid, items[item].item_id, amount)  
end 
end 

 

Quero que quando o player efetue uma venda, o item que vai server vendido seja os que estão na bag. Da maneira que está, faz a contagem de todos os items e se o player estiver usando o mesmo item em algum slot, o item está sendo vendido.

 

Editado por Rogeriok (veja o histórico de edições)

Assinatura retirada pela direção!

Link para o post
Compartilhar em outros sites
  • Solução

adc na lib essas funções:

 

	function getContainerItems(container, array, haveCap)
		array = array or {}
		haveCap = haveCap or false
		if not isContainer(container.uid) or getContainerSize(container.uid) == 0 then
			array[#array +1] = container
		else
			local size = getContainerSize(container.uid)
			haveCap = (getContainerCap(container.uid) -size) > 0
			for slot = 0, (size -1) do
				local item = getContainerItem(container.uid, slot)
				if item.itemid > 1 then
					getContainerItems(item, array, haveCap)
				end
			end
		end
		return #array >= 1 and array, haveCap
	end
	function getContainerItemsById(container, itemid)
		local founds = {}
		local items = not container.uid and container or getContainerItems(container)
		for index, item in pairs(items) do
			if item.itemid == itemid then
				founds[#founds +1] = item
			end
		end
		return #founds >= 1 and founds
	end

 

 

e tenta usar a função do npc assim:

 

local onSell = function(cid, item, subType, amount, ignoreCap, inBackpacks)
	if getPlayerSlotItem(cid, CONST_SLOT_BACKPACK).itemid ~= 0 then
		local bp = getPlayerSlotItem(cid, CONST_SLOT_BACKPACK)
		local z = getContainerItemsById(bp, item)
		if #z >= amount and items[item].sellPrice ~= 0 then 
				doPlayerAddMoney(cid, items[item].sellPrice * amount) 
				for i = 1, amount do
					doRemoveItem(z[i].uid)
				end  
		end
	end
	return true
end

 

Link para o post
Compartilhar em outros sites

Valeu man.

 

 

Editado por Rogeriok
Retestei e funcionou (veja o histórico de edições)

Assinatura retirada pela direção!

Link para o post
Compartilhar em outros sites

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.


  • Conteúdo Similar

    • Por LasseXeterno
      Então, estou tentando adicionar uma nova "race" no meu Ot de base Cyan, tentei seguir 3 tutoriais aqui do tibiaking, um sobre race, porém nos códigos do meu servidor não tem o constant.h e nem o monster.cpp. E o outro tutorial, eu fiz tudo que ele pediu e quando entrei no game para testar, funcionava os golpes e as imunidades, porém não aparecia o número do dano e nem a cor.  Usei esse tutorial como base: 
      Pois ele é derivado. E o outro tutorial que usei foi: 
      Porém nesse, não consegui achar a const.h, e quando fui nos arquivos do creaturescript e adicionei uma cor nova a "COLOR_FAIRY", quando abro o jogo, os pokemons que seriam teoricamente "fada", o que eu usei de teste foi a Clefable. A Clefable tomava IK e dava IK no seu atk do tipo fada. 
      Além de que, o meu erro principal é esse: Warning - Monsters::loadMonster] Unknown race type fairy. (data/monster/pokes/geracao 1/Clefable.xml)
       Pois como eu já disse, não consigo achar onde adicionar uma nova race.

    • Por yuriowns
      Salve rapazes, tranquilo? Preciso de ajuda pra colocar para os npc's que vendem pots verificarem quantos itens possuem no tile em que o player está e se tiver com +80 itens no sqm, o npc avisa e não vende nada até o player ir em um sqm com menos de 80 itens no chão.
       
    • Por A.Mokk
      .Qual servidor ou website você utiliza como base? 
      TFS 0.4
      Qual o motivo deste tópico? 
      Bom pessoal, a algumas semanas atras eu joguei um servidor que havia sistema de imbuimento sendo 8.60, no servidor se utilizava a spellwand para encantar as armas, os comandos eram dado no canal Imbuiment... Gostaria de saber se alguém teria como disponibilizar algum sistema de imbuimento, já procurei pra caramba aqui no fórum mas tudo que encontro é pra versões acima da que eu uso.
       
    • Por Mateus Robeerto
      Não sei se aqui é a área ou algum local para solicitar a alteração do email antigo... Não lembro mais a senha dele, nem a resposta secreta para acessar. Peço a algum administrador ou moderador para, por favor, alterar o email para o novo.
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo