Ir para conteúdo
  • 0

Talkaction Comprar


guixap

Pergunta

Talkaction Comprar



Da erro ao usar, espero ajuda!

 

Erro que aparece na tfs ao execurar in-game

[24/01/2011 19:44:20] [Warning - Event::loadScript] Cannot load script (data/talkactions/scripts/buy.lua)

[24/01/2011 19:44:20] data/talkactions/scripts/buy.lua:4: '=' expected near 'return'

 

Script:

 

 

function getPlayerMoney(cid)

gold = getPlayerItemCount(cid,9971)

money = gold ingot

return money

end

local items = {

["axe"] = {cash=150, id=8926, amount=1},

["sword"] = {cash=150, id=7403, amount=1},

["club"] = {cash=150, id=7423, amount=1},

["staff"] = {cash=150, id=8922, amount=1},

["book"] = {cash=150, id=8921, amount=1},

["axe dois"] = {cash=80, id=7453, amount=1},

["sword dois"] = {cash=80, id=7418, amount=1},

["club dois"] = {cash=80, id=7392, amount=1},

["staff dois"] = {cash=80, id=6534, amount=1},

["book dois"] = {cash=80, id=8904, amount=1},

["crossbow dois"] = {cash=150, id=8851, amount=1},

["crossbow"] = {cash=80, id=8853, amount=1}

}

---------End Config ---------

function onSay(cid, words, param)

bitem = items[param]

if (bitem ~= nil) then

if getPlayerMoney(cid) >= bitem.cash then

doPlayerAddItem(cid,bitem.id,bitem.amount)

doPlayerRemoveMoney(cid,bitem.cash)

else

doPlayerSendCancel(cid,"Desculpe, Dinheiro Insuficiente")

end

else

doPlayerSendCancel(cid, "Esse Item não é vendido.")

end

return 1

end

 

 

Eu encontrei essa talk aqui no site e gostaria que alguém concerta-se.



O problema é o seguinte, quando eu uso ela com o nome do item errado ela acusa

certinho que esse item não é vendido mais ao usar o nome certo, a talk aparece no default

e o item não chega. Se alguém conseguir arrumar pra ficaria grato.

 

Obs.: Eu sei que tem outras maneiras de comprar item com talk. Mais gostaria

de conseguir essa por que ela está muito perfeita.

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Tenta isso:

 

function getPlayerMoney(cid)
gold = getPlayerItemCount(cid,9971)
money = gold ingot
end
local items = {
["axe"] = {cash=150, id=8926, amount=1},
["sword"] = {cash=150, id=7403, amount=1},
["club"] = {cash=150, id=7423, amount=1},
["staff"] = {cash=150, id=8922, amount=1},
["book"] = {cash=150, id=8921, amount=1},
["axe dois"] = {cash=80, id=7453, amount=1},
["sword dois"] = {cash=80, id=7418, amount=1},
["club dois"] = {cash=80, id=7392, amount=1},
["staff dois"] = {cash=80, id=6534, amount=1},
["book dois"] = {cash=80, id=8904, amount=1},
["crossbow dois"] = {cash=150, id=8851, amount=1},
["crossbow"] = {cash=80, id=8853, amount=1}
} 
---------End Config ---------
function onSay(cid, words, param)
bitem = items[param]
if (bitem ~= nil) then
if getPlayerMoney(cid) >= bitem.cash then
doPlayerAddItem(cid,bitem.id,bitem.amount)
doPlayerRemoveMoney(cid,bitem.cash)
else
doPlayerSendCancel(cid,"Desculpe, Dinheiro Insuficiente")
end
else
doPlayerSendCancel(cid, "Esse Item não é vendido.") 
end
return 1
end

 

E o erro das talk.xml e porque ele nao esta localizando o seu arquivo. ve se o nome ta certo.

se de errado avise!

Link para o comentário
Compartilhar em outros sites

  • 0

Tenta isso:

 

function getPlayerMoney(cid)
gold = getPlayerItemCount(cid,9971)
money = gold ingot
end
local items = {
["axe"] = {cash=150, id=8926, amount=1},
["sword"] = {cash=150, id=7403, amount=1},
["club"] = {cash=150, id=7423, amount=1},
["staff"] = {cash=150, id=8922, amount=1},
["book"] = {cash=150, id=8921, amount=1},
["axe dois"] = {cash=80, id=7453, amount=1},
["sword dois"] = {cash=80, id=7418, amount=1},
["club dois"] = {cash=80, id=7392, amount=1},
["staff dois"] = {cash=80, id=6534, amount=1},
["book dois"] = {cash=80, id=8904, amount=1},
["crossbow dois"] = {cash=150, id=8851, amount=1},
["crossbow"] = {cash=80, id=8853, amount=1}
} 
---------End Config ---------
function onSay(cid, words, param)
bitem = items[param]
if (bitem ~= nil) then
if getPlayerMoney(cid) >= bitem.cash then
doPlayerAddItem(cid,bitem.id,bitem.amount)
doPlayerRemoveMoney(cid,bitem.cash)
else
doPlayerSendCancel(cid,"Desculpe, Dinheiro Insuficiente")
end
else
doPlayerSendCancel(cid, "Esse Item não é vendido.") 
end
return 1
end

 

E o erro das talk.xml e porque ele nao esta localizando o seu arquivo. ve se o nome ta certo.

se de errado avise!

 

 

O Directorio tá certo. Só está com defeito na linha 4

 

posta seu buy.lua

Link para o comentário
Compartilhar em outros sites

  • 0

talvez esta sirva!, nao estou mas em scripts so estou ajudando por humildade, faz um ano que nao fasso script

=[ agora to curtindo mas mapas e dising!

 

function getPlayerMoney(cid)
gold = getPlayerItemCount(cid,9971)
money = gold ingot

local items = {
["axe"] = {cash=150, id=8926, amount=1},
["sword"] = {cash=150, id=7403, amount=1},
["club"] = {cash=150, id=7423, amount=1},
["staff"] = {cash=150, id=8922, amount=1},
["book"] = {cash=150, id=8921, amount=1},
["axe dois"] = {cash=80, id=7453, amount=1},
["sword dois"] = {cash=80, id=7418, amount=1},
["club dois"] = {cash=80, id=7392, amount=1},
["staff dois"] = {cash=80, id=6534, amount=1},
["book dois"] = {cash=80, id=8904, amount=1},
["crossbow dois"] = {cash=150, id=8851, amount=1},
["crossbow"] = {cash=80, id=8853, amount=1}
} 
---------End Config ---------
function onSay(cid, words, param)
bitem = items[param]
if (bitem ~= nil) then
if getPlayerMoney(cid) >= bitem.cash then
doPlayerAddItem(cid,bitem.id,bitem.amount)
doPlayerRemoveMoney(cid,bitem.cash)
else
doPlayerSendCancel(cid,"Desculpe, Dinheiro Insuficiente")
end
else
doPlayerSendCancel(cid, "Esse Item não é vendido.") 
end
return 1
end

Editado por KungLao
Link para o comentário
Compartilhar em outros sites

  • 0
function onSay(cid, words, param)
   local itemid = 9971
   local param = items[param]
   local items = {
           ["axe"] = {cash = 150, id = 8926, amount = 1},
           ["sword"] = {cash = 150, id = 7403, amount = 1},
           ["club"] = {cash = 150, id = 7423, amount = 1},
           ["staff"] = {cash = 150, id = 8922, amount = 1},
           ["book"] = {cash = 150, id = 8921, amount = 1},
           ["axe dois"] = {cash = 80, id = 7453, amount = 1},
           ["sword dois"] = {cash = 80, id = 7418, amount = 1},
           ["club dois"] = {cash = 80, id = 7392, amount =1},
           ["staff dois"] = {cash = 80, id = 6534, amount =1},
           ["book dois"] = {cash = 80, id = 8904, amount = 1},
           ["crossbow dois"] = {cash = 150, id = 8851, amount = 1},
           ["crossbow"] = {cash = 80, id = 8853, amount = 1}
   }

   if (param ~= nil) then
   if getPlayerItemCount(cid, itemid) >= param.cash then
      doPlayerAddItem(cid, param.id, param.amount)
      doPlayerRemoveItem(cid, itemid, param.cash)
   else
      doPlayerSendCancel(cid,"Desculpe, você não tem o dinheiro suficiente.")
   end
      else
          doPlayerSendCancel(cid, "Item não encontrado.")
      end
      return true
   end

Editado por Cykotitan
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...