Ir para conteúdo

Featured Replies

Postado

@marcot Não encontrei nenhum problema. Caso tenha encontrado algo pode me falar, se quiser.

@Aldimun Esse é um erro de caracteres especiais, eles podem ser copiados junto com o código ao dar ctrl+c. Copia daqui https://pastebin.com/Zs69U3Gk

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

  • Respostas 16
  • Visualizações 2k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Em data/actions/scripts, crie um arquivo .lua, nomeie-o e cole o código dentro.   Em data/actions, abra o arquivo actions.xml e adicione esta tag: <action itemid="1445;3365" event="

  • @Aldimun Para configurar é bem simples, segue como está no script e gg. Entre os colchetes [...] vai o id do barril.   local config = { [1445] = { str = 5050512, -- Storage uses = 2, -

  • No tibia RL, o barriu some após a carga acabar. https://www.tibiawiki.com.br/wiki/Mana_Cask   Uma dica: Para fazer funcionar na house, basta adicionar o barril em um constructionki

Postado
  • Autor
3 horas atrás, JoviM disse:

@marcot Não encontrei nenhum problema. Caso tenha encontrado algo pode me falar, se quiser.

@Aldimun Esse é um erro de caracteres especiais, eles podem ser copiados junto com o código ao dar ctrl+c. Copia daqui https://pastebin.com/Zs69U3Gk

 

Funcionou!

Só um detalhe...

 

Minha ideia era fazer igual ao sistema de cask do tibia real, onde o player compra esse barril como furniture para colocar em sua house.

O que houve foi que, ao terminar as cargas do barril do ID X (receber a msg q esta vazio), e criar um outro barril do mesmo ID X, ele continua não permitindo dar use novamente.

Queria q cada barril fosse único.

Seria possível?

 

Obrigado até agora.

Postado

 

4 horas atrás, JoviM disse:

@Aldimun 

EDIT: Pesquisei aqui e pelo que entendi ao gastar as 100 cargas do barril, você só poderá usar se colocar um novo barril seria isso?

No tibia RL, o barriu some após a carga acabar.

https://www.tibiawiki.com.br/wiki/Mana_Cask

 

Uma dica:

Para fazer funcionar na house, basta adicionar o barril em um constructionkit em actions, editar o item.otb para poder dar moveable no barril e um script onMove para que o mesmo não seja possível ser arrastado para fora da house.

Cria um barril em items.xml/otb ou edita algum que não será utilizado, adiciona cargas nele e decayto 0

Exemplo:

<attribute key="charges" value="1000"/>
<attribute key="showcharges" value="1"/>
<attribute key="decayTo" value="0"/>

Você deve por também:

<attribute key="fluidSource" value="mana potion"/>

ou

<attribute key="fluidSource" value="health potion"/>

 

Acho que só isso já deve funcionar. Claro que, você deve testar para saber se as cargas estão contando ao utilizar um vial vazio no cask. Também precisa ver se ao utilizar 100 vials vazios, ele vai encher todos de uma só vez :)

 

 

Eu criei roshamuul 8.6, oramond, war zone... Tudo é possível, só não fica perfeito XD

Até exercise weapon para 8.6 eu fiz, mas a galera q joga na 8.6 nem sabe oq é isso :( 

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

 

Postado
  • Solução

@KOLISAO Entendi.. thanks!

@Aldimun Vou deixar aqui o script que criei, se quiser usar fica a seu critério hue

Spoiler

local config = {

--	[caskID] = {flask, potion}
	[12661] = {7636, 7618}, -- Health potion
	[12662] = {7636, 7620}, -- Mana potion
	[12663] = {7634, 7588}, -- Strong health potion
	[12664] = {7634, 7589}, -- Strong mana potion
	[12665] = {7635, 7591}, -- Great health potion
	[12666] = {7635, 7590} -- Great mana potion

}

function onUse(cid, item, fromPosition, itemEx, toPosition)

local cask = config[item.itemid]
	if cask then
		local caskCharge = getItemAttribute(item.uid, "charges")
		if caskCharge > 0 then
			local amount = getPlayerItemCount(cid, cask[1])
			if amount > 0 then
				doPlayerRemoveItem(cid, cask[1], amount)
				doPlayerAddItem(cid, cask[2], amount)
				doItemSetAttribute(item.uid, "charges", (getItemAttribute(item.uid, "charges") - 1))
			else
				doPlayerSendTextMessage(cid, 23, "You don't have empty potion flasks.")
			end
		else
			doPlayerSendTextMessage(cid, 23, "It is empty.")
		end
	end
	return true
end

 

 

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

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo