CA
pedido

Presiso de script de item HElllP!

Por CallOfTibia, 21 de ago. de 2013 em Scripts

item vira otro com chance
resolvido
script
13
1.9k
CallOfTibiaC
21 de agosto de 2013 às 07:17

Ola a todos presiso de um script para criar um item que quando usado em otro tenha uma certa chance de virar otro item,

se possivel tenha um effect para quando funcionar e otro para quando não funcionar.

Session StartS
21 de agosto de 2013 às 07:46

Tenta. Não testei...

 

Em actions.xml poe

 

<action itemid="1111" event="script" value="mudaritem.lua"/>

 

 

 

local itemusar ={2222, 3333}
local viraritem {
[1] = {4444},
[2] = {5555},
[3] = {6666},
[4] = {7777},
}
function onUse(cid, item, fromPosition, itemEx, toPosition)
 
if(item.itemid == itemusar) then
doTransformItem(itemEx.uid, viraritem[random])
doRemoveItem(item.uid, 1)
doSendMagicEffect(toPosition, CONST_ME_MAGIC_RED)
else
doSendMagicEffect(toPosition, CONST_ME_MAGIC_GREEN)
return true
end
 
return true
end

Editado Agosto 21 por Cleberadm

SlicerS
21 de agosto de 2013 às 07:49

/\ ja adianto q ta completamente errado ;p

Session StartS
21 de agosto de 2013 às 07:55

'-' adiante a solução D: chato ):

 

por acaso é

 

if(item.itemid == 1111 and isInArray(itemusar, itemEx.itemid)) then

 

?'-'

Editado Agosto 21 por Cleberadm

CallOfTibiaC
21 de agosto de 2013 às 07:58

Nâo funciono

 

 

Esquesi de fala meu server e 9.60 ,to com varios script mas nenhum pega n sei pq!

 

depois do

if(item.itemid == 1111 and isInArray(itemusar, itemEx.itemid)) then

pioro agora da erro antes so não pegava agora da erro no arquivo

Editado Agosto 21 por CallOfTibia

SlicerS
21 de agosto de 2013 às 09:45

 

 

local array = {
   [1111] = {transformTo = 2222, chance = 50},
}
local eff_sucess = 21
local eff_fail = 2

function onUse(cid, item, frompos, item2, topos)    
   local arr = array[item.itemid]
   if not arr then
      return true
   end
   
   if math.random(1000) <= arr.chance*10 then
      doTransformItem(item.uid, arr.transformTo)
      doSendMagicEffect(getThingPos(cid), eff_sucess)
   else
      doSendMagicEffect(getThingPos(cid), eff_fail)
   end
return true
end

 

sei la qual eh tua ideia mas, se quiser q esse tal item possa transformar + q um item, soh coloque +1 tabela igual a essa..

[1111] = {transformTo = 2222, chance = 50},

onde [xxxx] eh o item q sera transformado, transformTo = xxxx eh o item q vai transformar e chance eh chance kk'

CallOfTibiaC
21 de agosto de 2013 às 10:14

cara vo explicar eu quero pegar um item com useable e usar ele e otro e dps que eu usar tenha a chance de virar otro item.

 

Entendeu se poder faser asim agradeço

alissonfgpA
21 de agosto de 2013 às 11:37

n testei reporta o erro

 

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
     if item.itemid == addid and itemEx.itemid == addid then---o primeiro add o q usa e o segundo em qual vai item vai ser usado
        local rand = math.random(30, 100)
        if(rand >= 95 and rand <= 100) then
        doTransformItem(itemEx.uid, addid)---q vai transformar
        doPlayerSendTextMessage(cid,18,"Parabens!.")
        doSendMagicEffect(toPosition, CONST_ME_SMOKE)
     else
        doPlayerSendTextMessage(cid,18,"voce nao teve sorte desta vez, tente novamente.")
         doSendMagicEffect(toPosition, CONST_ME_SMOKE)
    end
 end
return true
end

Editado Agosto 21 por alissonfgp

SlicerS
21 de agosto de 2013 às 12:33

/\ teu ta errado, fantando um end e q 'sistema' de porcentagem eh esse LOL

 

@topic

o meu ja faz isso.. q tal testar antes?

CallOfTibiaC
21 de agosto de 2013 às 14:41

ata slicer na tag do actions eu vo por item que vou usar no item 1111 que vai virar o item 2222?

isso ou estou errado?

SlicerS
21 de agosto de 2013 às 15:12

sim na tag tu coloca... itemid="xxxx", q no caso seria o id do item q tu vai da use, o com o 'use with'... e n esquece de pro ele tb ali no [xxxx] da tabela...

CallOfTibiaC
21 de agosto de 2013 às 16:13

Duvida resolvida +rep pro slicer podem fechar o topico

Editado Agosto 21 por CallOfTibia

RoksasR
21 de agosto de 2013 às 18:55

Tópico movido para a seção de dúvidas e pedidos resolvidos.