Ir para conteúdo

Help - Quest - O Que Tem De Errado No Meu Script


Mehahbr

Posts Recomendados

O que tem de errado no meu script de quest dos mais fortes?

Ele da erro na hora de carregar no Distro...

Ajudem-Me

function onUse(cid, item, frompos, item2, topos)

voc = getPlayerVocation(cid)
queststatus = getPlayerStorageValue(cid,19000)


if voc == 1,2,5,6,9,10 then
if queststatus == -1 then
doPlayerAddItem(cid,7424,1)
doPlayerAddItem(cid,2160,10)
setPlayerStorageValue(cid,19000,1)
else
doPlayerSendTextMessage(cid,22,"Você já pegou o seu prêmio.")
end
elseif voc == 3,7,11 then
if queststatus == -1 then
doPlayerAddItem(cid,7438,1)
doPlayerAddItem(cid,2352,1)
doPlayerAddItem(cid,2160,10)
setPlayerStorageValue(cid,19000,1)
else
doPlayerSendTextMessage(cid,22,"Você já pegou o seu prêmio.")
end
elseif voc == 4 8 12 then
if queststatus == -1 then
doPlayerAddItem(cid,2160,10)
doPlayerAddItem(cid,2408,1)
doPlayerAddItem(cid,2415,1)
doPlayerAddItem(cid,2453,1)
setPlayerStorageValue(cid,19000,1) else
doPlayerSendTextMessage(cid,22,"Você já pegou o seu prêmio.")
end
else
return 0
end
return 1
end

Link para o comentário
Compartilhar em outros sites

O problema é que você está igualando a vocation do player com varios coisas. Isso não é possível. Vou refazer o script todo para você.

function onUse(cid, item, frompos, item2, topos)
local voc, n, msg = getPlayerVocation(cid), 0, "You have found a: "
local prizes = {
[1] = {{7424,1}},
[2] = {{7438,1},{2352,1}},
[3] = {{2408,1,true},{2415,1},{2453}}}

if getPlayerStorageValue(cid,19000) ~= -1 then
doPlayerSendTextMessage(cid,22,"It's empty.")
return true
end

if isInArray({1,2,5,6,9,10}, voc) then n = 1
elseif isInArray({3,7,11}, voc) then n = 2
else n = 3 end

for _,item in ipairs(prizes[n]) do
if item[3] then
local i = doPlayerAddItem(cid,2408,1)

doItemSetAttribute(i, "attack", 87)
doItemSetAttribute(i,"description","Refinado(Atk): +22\nEsse item foi obtido por "..getCreatureName(cid)..".")
else
doPlayerAddItem(cid, item[1], item[2])
end
msg = msg .. getItemArticleById(item[1]).." "..getItemNameById(item[1])..","
end

setPlayerStorageValue(cid,19000,1)
doPlayerAddItem(cid,2160,10)
doPlayerSendTextMessage(cid, 22, string.gsub(msg, -1) .. ".")

return true
end

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

só que tem um problema que a nas sword elas vem refinada de quest... assim:

 

 


   local item4 = doPlayerAddItem(cid,2408,1)
doItemSetAttribute(item4, "attack", 87)
doItemSetAttribute(item4,"description","Refinado(Atk): +22\nEsse item foi obtido por "..getCreatureName(cid)..".")

 

como eu ponho isso neste script??

 

Outra coisa no meu distro nao esta carregando ele fala que esta dando erro na Linha 20 e aparece unifinished string near ´",´

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

só que tem um problema que a nas sword elas vem refinada de quest... assim:

 

 


local item4 = doPlayerAddItem(cid,2408,1)
doItemSetAttribute(item4, "attack", 87)
doItemSetAttribute(item4,"description","Refinado(Atk): +22\nEsse item foi obtido por "..getCreatureName(cid)..".")

 

como eu ponho isso neste script??

 

Outra coisa no meu distro nao esta carregando ele fala que esta dando erro na Linha 20 e aparece unifinished string near ´",´

 

Erro meu, já consertei. E tipo, você quer colocar esse code (da sword aprimorada) neste script que eu fiz ou pode ser outro? (de outra quest).

Link para o comentário
Compartilhar em outros sites

Sim quero por nesta quest mesmo... porque é um quest onde os player pegam dependendo da vocacao deles... e essa sword tem que vir refinada... e tals

 

ainda esta com erro na linha 13 :s

Link para o comentário
Compartilhar em outros sites

Sim quero por nesta quest mesmo... porque é um quest onde os player pegam dependendo da vocacao deles... e essa sword tem que vir refinada... e tals

 

ainda esta com erro na linha 13 :s

 

function onUse(cid, item, frompos, item2, topos)
local voc, n, msg = getPlayerVocation(cid), 0, "You have found a: "
local prizes = {
[1] = {{7424,1}},
[2] = {{7438,1},{2352,1}},
[3] = {{2408,1,true},{2415,1},{2453}}}

if getPlayerStorageValue(cid,19000) ~= -1 then
doPlayerSendTextMessage(cid,22,"It's empty.")
return true
end

if isInArray({1,2,5,6,9,10}, voc) then n = 1
elseif isInArray({3,7,11}, voc) then n = 2
else n = 3 end

for _,item in ipairs(prizes[n]) do
if item[3] then
local i = doPlayerAddItem(cid,2408,1)

doItemSetAttribute(i, "attack", 87)
doItemSetAttribute(i,"description","Refinado(Atk): +22\nEsse item foi obtido por "..getCreatureName(cid)..".")
else
doPlayerAddItem(cid, item[1], item[2])
end
msg = msg .. getItemArticleById(item[1]).." "..getItemNameById(item[1])..","
end

setPlayerStorageValue(cid,19000,1)
doPlayerAddItem(cid,2160,10)
doPlayerSendTextMessage(cid, 22, string.gsub(msg, -1) .. ".")

return true
end

 

Concertado e adicionado o refinamento no item 2408. Qualquer erro poste aqui. (Posta o erro que deu no console pra ficar mais fácil).

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

×
×
  • Criar Novo...