BF
action

erro script action

Por bfs102030, 16 de jan. de 2016 em Scripts

erro action alavanca food
10
1.7k
bfs102030B
16 de janeiro de 2016 às 07:14

Ola galera estou precisando de uma ajuda com esse script..

Ele funciona da seguinte forma. É uma action que coloquei numa alavanca de comer food.mais nao sao aquelas alavancas que entrega o food na backpack do player nao, esse script mata a fome do player ou seja puxando a alavanca come food.

A parte de comer o food e de mostrar a msg "YOU ARE FULL" e de aparecer um efeito ao comer esta funcinando perfeitamente o unico problema e que quando eu puxo a alavanca ela nao se meche eu gostaria que ela se movesse <<<< >>> toda vez que puxar.

 

o id 2672 e o id do food na alavanca o id da alavanca que to usando e 1945 normal /1946 puxada desde ja agrdeco galerinha..

 

actions.xml

 

<action actionid="2672" event="script" value="pbot/alavancafood.lua"/>

 

 

alavancafood.lua

 

 

MAX_FOOD = 1200

size = 50
function onUse(cid, item, fromPosition, itemEx, toPosition)
if (getPlayerFood(cid) + size > MAX_FOOD) then
doPlayerSendCancel(cid, "You are full.")
doSendMagicEffect(fromPosition, CONST_ME_POFF)
return true
end
doPlayerFeed(cid, size)
doCreatureSay(cid, "Delicious", TALKTYPE_MONSTER)
doPlayerFeed(cid, size)
doSendMagicEffect(fromPosition, CONST_ME_MAGIC_GREEN)
return true

end

 

 

SkullsS
16 de janeiro de 2016 às 08:36

Coloca assim logo depois da linha onUse:

If item.itemid == 1945 then doTransformItem(item.uid, 1946)

else

doTransformItem(item.uid, 1945)

end

Lucas CPL
16 de janeiro de 2016 às 09:29

Coloca assim no código:

local alavanca = {
  [1945] = 1946,
  [1946] = 1945
}

if alavanca[item.itemid] then
   doTransformItem(item.uid,alavanca[item.itemid])
end
CaronteC
16 de janeiro de 2016 às 09:32

@@Skulls,

Mais fácil assim:


doTransformItem(item.uid, item.itemid == 1945 and 1946 or 1945)

é um truque de bool, que também é usado em strings, na hora da enumeração...

Exemplo:

local frutas = {"laranja", "maça", "banana", "pessego"}
local s = "frutas: "

for i = 1, #frutas do 
    s = s .."".. frutas[i] ..""..(i == #frutas and ". " or ", ")
end
    print(s)

@@Lucas CP, Também...

bfs102030B
16 de janeiro de 2016 às 09:38

coloquei como se disse deu isso a distro

 

[9:31:49.990] [Error - LuaInterface::loadFile] data/actions/scripts/pbot/alavanc
afood.lua:5: '=' expected near 'item'
[9:31:49.990] [Warning - Event::loadScript] Cannot load script (data/actions/scr
ipts/pbot/alavancafood.lua)
[9:31:49.990] data/actions/scripts/pbot/alavancafood.lua:5: '=' expected near 'i
tem'
tem como se montar ele ae pra mim n ?
CaronteC
16 de janeiro de 2016 às 09:42

Esse deu errado?

MAX_FOOD = 1200
size = 50
 
function onUse(cid, item, fromPosition, itemEx, toPosition)
 
    if (getPlayerFood(cid) + size > MAX_FOOD) then
        doPlayerSendCancel(cid, "You are full.")
        doSendMagicEffect(fromPosition, CONST_ME_POFF)
        return true
    end
        doPlayerFeed(cid, size)
        doCreatureSay(cid, "Delicious", TALKTYPE_MONSTER)
 
        doPlayerFeed(cid, size)
        doSendMagicEffect(fromPosition, CONST_ME_MAGIC_GREEN) -- Deletei aqui sem querer kkkkk
		doTransformItem(item.uid, (item.itemid == 1945 and 1946 or 1945) )
 
    return true
end

Editado Janeiro 16 por Caronte

bfs102030B
16 de janeiro de 2016 às 09:46

agora esse ae que se mandou deu esse erro na distro

 

[9:40:09.113] [Error - LuaInterface::loadFile] data/actions/scripts/pbot/alavanc
afood.lua:16: ')' expected (to close '(' at line 15) near 'doTransformItem'
[9:40:09.113] [Warning - Event::loadScript] Cannot load script (data/actions/scr
ipts/pbot/alavancafood.lua)
[9:40:09.113] data/actions/scripts/pbot/alavancafood.lua:16: ')' expected (to cl
ose '(' at line 15) near 'doTransformItem'
CaronteC
16 de janeiro de 2016 às 09:48

Opa na hora de colar eu deletei sem querer um parêntesis, editei, copie novamente.

bfs102030B
16 de janeiro de 2016 às 09:53

ae Caronte agora ficou show de bola deu certinho..

Obg a todos que ajudaram!!

 

obs >> caronte vc nao poderia me ajudar neste meu outro topico preciso muito resolver isso ?

 

http://www.xtibia.com/forum/topic/238708-formula-spell/?p=1681562

Editado Janeiro 16 por bfs102030

SkullsS
16 de janeiro de 2016 às 15:12

@Caronte imaginei que tivesse algo assim, mas não sabia a sintaxe em lua. Obrigado pelo toque.