Ir para conteúdo
  • Cadastre-se

(Resolvido)Criar Mana/Health Cask em 8.6


Ir para solução Resolvido por Agaka,

Posts Recomendados

@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)
Link para o post
Compartilhar em outros sites
  • Respostas 16
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

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="script" value="SEU ARQUIVO.lua"/> Em itemid você passa o id dos barris e separa eles por vírgulas, assim você não precisa criar 1 tag para cada barril.   Em data/creaturescripts/scripts, abra o login.lua e procure pela função onLogin(cid). Abaixo dela adicione: local barrelStr =

@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, -- Quantas vezes pode usar o barril flask = 7636, -- ID flask potion = 7618 -- ID potion }, [3365] = { str = 50505326, -- Storage uses = 2, -- Quantas vezes pode usar o barril flask = 7636, -- ID flask potion = 7620 -- ID potion } } function onUse(cid, item, fromPosition, itemEx, toP

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="

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.

Link para o post
Compartilhar em outros sites

 

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)

 

Link para o post
Compartilhar em outros sites
  • 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)
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.

  • Estatísticas dos Fóruns

    96842
    Tópicos
    519601
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo