Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Bem queria uma action acho q é simples queria por tipo como se fosse forja eu uso um item q seria o upgrade ai quando exemplo

tenho uma spear ai se uso o upgrade ela vira enhanched spear se tenho uma arrow ela vira uma poison arrow se tenho um axe ele vira um battle axe entendeu ? e precisa de lvl para cada upgrade a pedra fica viva tipo n remove a pedra ai fica tipo uma lista

tipo

id "xxxx" newid "xxxx" level = xxxx

tipo assim.

Ae ajudei? Rep+ :D
 

Link para o post
Compartilhar em outros sites

Sistema de Forja,

Versão Testada: TFS 0.4 (8.60)

Sistema de Forja V1.0

Vamos la

em Actions.xml Adicione:

<action uniqueid="16451" event="script" value="forjar.lua">
Crie um Arquivo LUA em Actions>Scripts com o nome de "forjar.lua" e adicione isso dentro:
function onUse(cid, item, item2, frompos, topos, pos)

local config = {

["Magic Plate Armor"] = {t1=2476,t2=2464,t3=2472}, -- t1 = ID do ITEM 1 |---| t2 = ID do ITEM 2 |---| t3 = ID do ITEM a ser FORJADO --

["Dragon Scale Mail"] = {t1=2489,t2=2487,t3=2492},

}


local r1 = {x = 222, y = 217, z = 7, stackpos= 2} -- Posição 1 ( NÃO MEXA NO stackpos= 2 )

local r2 = {x = 224, y = 217, z = 7, stackpos= 2} -- Posição 2 ( NÃO MEXA NO stackpos= 2 )

local r3 = {x = 223, y = 217, z = 7} -- Posição do Item a Ser Criado


local q1 = getThingfromPos(r1)

local q2 = getThingfromPos(r2)

		for i, x in pairs(config) do

				if (q1.itemid == x.t1 and q2.itemid == x.t2) or (q1.itemid == x.t2 and q2.itemid == x.t1) then

						doRemoveItem(q1.uid, 1)

						doRemoveItem(q2.uid, 1)

						addEvent(doCreateItem, 1000, x.t3, 1, r3)

						doSendMagicEffect(r3, 47)

						addEvent(doSendMagicEffect, 900, r3, 39)

						doPlayerSendTextMessage(cid, 22, "Parabéns, Você Forjou Um " .. i .. ".")

						break

				end

		end

		return TRUE

end
na Alavanca Colocar a UniqueID: 16451 Configurando: ["Magic Plate Armor"] = {t1=2476,t2=2464,t3=2472}, Vermelho: Nome do Item a Ser Forjado Azul: ID do Item1 necessário para forjar o item Vermelho Roxo: ID do Item2 necessário para forjar o item Vermelho Verde: ID do Item Vermelho Você Também Pode Adicionar Novas "Receitas" para Forjas !! Só Adicionar só 1 Linha a Mais Iguais a Outras mudando as Configurações Posição: local r1 = {x = 222, y = 217, z = 7, stackpos= 2} -- Posição do Item1 ( NÃO MEXA NO stackpos= 2 ) local r2 = {x = 224, y = 217, z = 7, stackpos= 2} -- Posição do Item2 ( NÃO MEXA NO stackpos= 2 ) local r3 = {x = 223, y = 217, z = 7} -- Posição do Item Vermelho Talkaction para mostrar os Itens de Forja talkactions.xml Adicione isso:
<talkaction words="!forjas" script="forjas.lua">
Crie um arquivo forjas.lua na pasta talkactions>scripts e adicione isso dentro:
function onSay(cid, words, param)

file = io.open('forjas.txt','r')

notice = file:read(-1)

doShowTextDialog(cid,9004,notice)

file:close()

end

Agora na Pasta Principal do Seu OT, onde tem a pasta DATA, as DLLs e o .exe do seu ot

Crie um Arquivo .txt ( arquivo de texto ), renomeie para forjas.txt

e dentro dele adicione os materiais de Forjas para os seus Players não se perderem.

Créditos: pablo361do tibiaking...

Era isso que você queria ? rsrs

Editado por Kimoszin (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

1215171, antes de sair reclamando, agradeça o Eduardo Dantas por gastar seu tempo procurando um script pra tentar lhe ajudar.

E na próxima vez esclareça o seu pedido pois assim como ele, eu não entendi.

hFswhf8.png

 

Link para o post
Compartilhar em outros sites

upgrades.lua

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

local items = {

["spear"] = {id=2389, toid=7367, level=124},

["arrow"] = {id=2544, toid=2545, level=130},

["axe"] = {id=2386, toid=2378, level=15},

}


for i, x in pairs(items) do

	    if (itemEx.itemid == x.id) then

		    if getPlayerLevel(cid) >= x.level then

			    if doPlayerRemoveItem(cid, x.id, 1) == TRUE then

				 doPlayerSendTextMessage(cid, 22, "Você acaba de dar upgrade em: "..i..", para "..getItemNameById(x.toid)..".")

				 doPlayerAddItem(cid, x.toid)

			    else

				 doPlayerSendTextMessage(cid, 22, "Desculpe, mais você nao possui o item necessario")

			    end

	    else

		  doPlayerSendTextMessage(cid, 22, "Desculpe, mais você nao o level "..x.level.." para fazer o upgrade.")

			 end

		 end

end

return TRUE

end
[id] = ID do item que vai sofrer o upgrade, [toid] = ID do item que vai ser o upgrade, actions.xml
<action itemid="IDdoItem" event="script" value="upgrades.lua" />
Crie um arquivo aonde fica o distro do seu OTServer, com o nome upgrades.txt, coloque isso dentro:
[Enchanted Spear]

Spear + Item


[Poison Arrow]

Arrow + Item


[Battle Axe]

Axe + Item
Agora em a talkactions, upgradestalk.lua
function onSay(cid, words, param)

file = io.open('upgrades.txt','r')

notice = file:read(-1)

doShowTextDialog(cid,IdDeUmItem,notice)

file:close()

end
talkactions.xml
<talkaction words="!upgrade" script="upgradestalk.lua"/>

Feito por mim.

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo