Ir para conteúdo
  • 0

Só pode usar o comando com certa storage


Gabrielkss

Pergunta

Gostaria de saber se tem como modificar esse script, para que só possa usar uma storage especifica...

 

local items = {{2160, 50}, {2163, 100}, {2563, 100}, ...} --{{ID_do_item, quantia_requerida}, {ID_do_item, quantia_requerida}, ...}
function onSay(cid)
local str = ""
for _, item in pairs(items) do
if str == "" then
str = getItemInfo(item[1]).name.." - ["..getPlayerItemCount(cid, item[1]).."/"..item[2].."]"
else
str = str.."\n"..getItemInfo(item[1]).name.." - ["..getPlayerItemCount(cid, item[1]).."/"..item[2].."]"
end
end
doPlayerPopupFYI(cid, "You have:\n"..str)
return true
end
Por favor ajudem.
Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

Tente:

local items = {{2160, 50}, {2163, 100}, {2563, 100}, ...}     --{{ID_do_item, quantia_requerida}, {ID_do_item, quantia_requerida}, ...}
local stg = 45713 --valor da storage
function onSay(cid)
if getPlayerStorageValue(cid, stg) >= 1 then
    local str = ""
    for _, item in pairs(items) do
        if str == "" then
            str = getItemInfo(item[1]).name.." - ["..getPlayerItemCount(cid, item[1]).."/"..item[2].."]"
        else
            str = str.."\n"..getItemInfo(item[1]).name.." - ["..getPlayerItemCount(cid, item[1]).."/"..item[2].."]"
        end
    end
    doPlayerPopupFYI(cid, "You have:\n"..str)
else
    doPlayerSendCancel(cid,"Você não pode usar este comando.")
end
    return true
end
Link para o comentário
Compartilhar em outros sites

  • 0


local items = {{2160, 50}, {2163, 100}, {2563, 100}, ...} --{{ID_do_item, quantia_requerida}, {ID_do_item, quantia_requerida}, ...}

local s = 00001 --- id da storage

 

function onSay(cid)

local str = ""

for _, item in pairs(items) do

if str == "" then

str = getItemInfo(item[1]).name.." - ["..getPlayerItemCount(cid, item[1]).."/"..item[2].."]"

else

str = str.."\n"..getItemInfo(item[1]).name.." - ["..getPlayerItemCount(cid, item[1]).."/"..item[2].."]"

end

if getPlayerStorageValue(cid, s) then

doPlayerSendCancel(cid,"MENSAGEM DE AVISO PRA QUANDO NÃO TÊ STORAGE")

end

doPlayerPopupFYI(cid, "You have:\n"..str)

end

return true

end

 

Link para o comentário
Compartilhar em outros sites

  • 0
4 coisas:

colocar "return" antes de "doPlayerSendCancel"

Colocar uma checagem na storage, por exemplo: "if getPlayerStorageValue(cid, s) == X then" (valor no lugar de X)

Coloca a checagem da storage antes do comando "for" para não utilizar memória pra nada no servidor caso o player não tenha a storage.

E tira o "doPlayerPopupFYI" de dentro da estrutura do comando "for".

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

  • 0

Não recomendo você usar o script exatamente como está acima.

Usa esse: ~~

 

EDIT: O script acima está correto, pensei que o comando FYI estava dentro da estrutura "for", erro meu :p

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

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...