Ir para conteúdo
  • 0

Fusion system ( 8.60)


Nosifero

Pergunta

Olá amigos não sei que aconteceu com meu script, pois parece está tudo certinho mas ele fica apenas dando a mensagem que os itens não estão na ordem certa ou que não há itens! segue o script usado pessoal!

--------------------------------------
--------- 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 = {2154,2153,2155,2156,2158}  -- 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 = 2253-- id do item para criar items fracos (wooden trash). obs: APENAS 1 ID

-- Premios
local premios = {2542,11301,11302,2645,2124,2173,2195,2466,5803,2414,7402,2498,2498,2520} -- premios fracos. obs: 2 OU MAIS IDS
local premiosraros = {6529,8851,8926,8924,2646,8928,2470,2502,2503,2504,2453,2453,7423,6391,2522,2342,2494,2494,11240,11240,2472,2472,2123,2123,2171,2171,2496,2469,2495,2495,8932,2415,2408,2390,8885,8886,8887,8877,8878,8879}  -- premios raros. obs: 2 OU MAIS IDS

-- Posicoes
local pos1 = {x=186,y=39,z=8,stackpos=255} -- posicao do item 1
local pos2 = {x=187,y=39,z=8,stackpos=255} -- posicao do item 2
local pos3 = {x=188,y=39,z=8,stackpos=255} -- posicao do item 3
local pos4 = {x=187,y=39,z=8,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 um Item!")
         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 um Item Raro!")
         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  
Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Retire o == TRUE depois das funçoes isInArray:

--------------------------------------
--------- 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 = {2154,2153,2155,2156,2158}  -- 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 = 2253-- id do item para criar items fracos (wooden trash). obs: APENAS 1 ID

-- Premios
local premios = {2542,11301,11302,2645,2124,2173,2195,2466,5803,2414,7402,2498,2498,2520} -- premios fracos. obs: 2 OU MAIS IDS
local premiosraros = {6529,8851,8926,8924,2646,8928,2470,2502,2503,2504,2453,2453,7423,6391,2522,2342,2494,2494,11240,11240,2472,2472,2123,2123,2171,2171,2496,2469,2495,2495,8932,2415,2408,2390,8885,8886,8887,8877,8878,8879}  -- premios raros. obs: 2 OU MAIS IDS

-- Posicoes
local pos1 = {x=186,y=39,z=8,stackpos=255} -- posicao do item 1
local pos2 = {x=187,y=39,z=8,stackpos=255} -- posicao do item 2
local pos3 = {x=188,y=39,z=8,stackpos=255} -- posicao do item 3
local pos4 = {x=187,y=39,z=8,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) 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 um Item!")
         doTransformItem(itemEx.uid,itemEx.itemid+1)
      elseif isInArray(gems,getpos[2].itemid) 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 um Item Raro!")
         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

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...