Baseado no script de Dias Otonwer
Esse script faz com que 3 items sejam usados para formar um item final.
Nele há 2 tipos de combinações:
- Combinação Fraca: serão usados 3 items no qual o resultado será um item fraco
- Combinação Rara: serão usados 3 items no qual o resultado será um item raro
Ambas configuráveis, no meu script essas são as combinações:
- Combinação Fraca: piece of royal steel + gem + wooden trash
- Combinação Rara: piece of royal steel + gem + frozen starlight
Os resultados são configuráveis e randomizados.
Testado em: TFS Crying Damson 8.54
Script:
Crie um arquivo dentro da pasta actions/scripts com o nome fusion.lua e coloque:
--------------------------------------
--------- FUSION SYSTEM --------------
-- Ideia Original por: Dias Otonwer --
----- Melhorado por: Duduzz ----------
--------------------------------------
function onUse(cid,item,fromPosition,itemEx,toPosition)
--------------------------------
-------- Configuração ----------
--------------------------------
-- Item 1 -> pedaco de ferro ; Item 2 -> gemas
local steel = 5889 -- id do pedaço de ferro ou a materia prima pra fusao. obs: APENAS 1 ID
local gems = {2153,2154,2155,2156} -- id das gemas ou do segundo item para fusao. obs: 2 OU MAIS IDS
-- Item 3 -> frozen starlight ou wooden trash (configuravel)
local item3 = 2361 -- id do item para criar items raros (frozen starlight). obs: APENAS 1 ID
local item4 = 2250 -- id do item para criar items fracos (wooden trash). obs: APENAS 1 ID
-- Premios
local premios = {2392,2393,2414,7748,2407} -- premios fracos. obs: 2 OU MAIS IDS
local premiosraros = {2431,2447,8925,2400,7382} -- premios raros. obs: 2 OU MAIS IDS
-- Posicoes
local pos1 = {x=207,y=348,z=7,stackpos=255} -- posicao do item 1
local pos2 = {x=209,y=348,z=7,stackpos=255} -- posicao do item 2
local pos3 = {x=211,y=348,z=7,stackpos=255} -- posicao do item 3
local pos4 = {x=213,y=348,z=7,stackpos=255} -- posicao do item criado
--------------------------------
-- Não mexa em nada abaixo!!! --
--------------------------------
local getpos = {getThingFromPos(pos1),getThingFromPos(pos2),getThingFromPos(pos3)}
local randfacil = math.random(1,table.getn(premios))
local resultado = premios[randfacil]
local randdificil = math.random(1,table.getn(premiosraros))
local resultado1 = premiosraros[randdificil]
if itemEx.itemid == 1945 then
if getpos[1].itemid == steel then
if isInArray(gems,getpos[2].itemid) == TRUE and getpos[3].itemid == item4 then
doCreateItem(resultado,1,pos4)
doRemoveItem(getpos[1].uid,1)
doRemoveItem(getpos[2].uid,1)
doRemoveItem(getpos[3].uid,1)
doSendMagicEffect(pos4,13)
doSendMagicEffect(pos3,13)
doSendMagicEffect(pos2,13)
doSendMagicEffect(pos1,13)
doPlayerSendTextMessage(cid,20,"Voce criou uma arma!")
doTransformItem(itemEx.uid,itemEx.itemid+1)
elseif isInArray(gems,getpos[2].itemid) == TRUE and getpos[3].itemid == item3 then
doCreateItem(resultado1,1,pos4)
doRemoveItem(getpos[1].uid,1)
doRemoveItem(getpos[2].uid,1)
doRemoveItem(getpos[3].uid,1)
doSendMagicEffect(pos4,13)
doSendMagicEffect(pos2,13)
doSendMagicEffect(pos3,13)
doSendMagicEffect(pos1,13)
doPlayerSendTextMessage(cid,20,"Voce criou uma arma rara!")
doTransformItem(itemEx.uid,itemEx.itemid+1)
else
doPlayerSendCancel(cid,"Os items estao errados ou sua ordem esta incorreta.")
end
else
doPlayerSendCancel(cid,"Voce precisa primeiramente da materia prima.")
end
elseif itemEx.uid == 5396 and itemEx.itemid == 1946 then
doTransformItem(itemEx.uid,1945)
else
doPlayerSendCancel(cid,"Impossivel")
end
return 1
end
Posições dos items: pos1,pos2,pos3, são as posições dos items que serão usados e pos4 é a posição do item formado.
Agora no actions.xml:
<action uniqueid="5396" event="script" value="fusion.lua"/>
E no mapeditor crie uma área com 4 espaços, 3 pra colocar os items e outro para o item formado (olhe as ss's) e coloque uma alavanca com o uniqueid 5396
Para adicionar novas gemas ou novos premios apenas adicione uma vírgula e o ID nas tabelas, por exemplo:
Adicionando gemas:
local gems = {2153,2154,2155,2156,2157}
Adicionando premios:
local premios = {2392,2393,2414,7748,2407,2400}
Lembrando que os prêmios nunca serão fixos e serão randomizados de acordo com os ids que você colocar na configuração.
SS's:
Quaisquer dúvidas ou ideias me avise pelo tópico ou por PM.
Serão lançadas futuras versões com mais funções.