Ir para conteúdo

Featured Replies

Postado

Fala pessoal.

Estou com um bug em algumas quests, parece ser um bug simples.
Todo player que clica no bau, da "The chest is empty", como se ja tivesse pego a quest

O script me parece normal, como de outras quests que funcionam

 

  Citar

 

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

if item.uid == 10005 then
  queststatus = getPlayerStorageValue(cid,10005)
  if queststatus == -1 and getPlayerAccess(cid) == 0 then
   doPlayerSendTextMessage(cid,22,"You have found a steel boots.")
   item_uid = doPlayerAddItem(cid,2645,1)
   setPlayerStorageValue(cid,10005,1)
 
  else
   doPlayerSendTextMessage(cid,22,"The chest is empty.")
  end
else
  return 0
end
return 1
end

e no cadastro da actions também

 

  Citar

 

<action uniqueid="10005" script="Edron/Demon Helmet Quest/dh_steelboots.lua" />


No map editor ta normal, o uniqueid do bau esta certo.


Alguém sabe o que pode ser? Grato!

Resolvido por luanluciano93

Ir para solução
Postado

Pode ser que já exista alguma quest com esse mesmo uniqueID, mas creio que não é isso, se não o distro já teria acusado um error logo quando ele é executado..

Tente usar outro valor diferente nessa storage.

 

Caso não dê certo tente usar esse código aqui:

function onUse(cid, item, frompos, item2, topos)
 
if item.uid ==10005 then
queststatus = getPlayerStorageValue(cid,1995)
if queststatus == 1 then
doCreatureSay(cid, "The chest is empty.", TALKTYPE_ORANGE_1)
doSendMagicEffect(topos,2)
 
else
doCreatureSay(cid, "You won a Steel Boots!", TALKTYPE_ORANGE_1)
doSendMagicEffect(topos,28)
coins_uid = doPlayerAddItem(cid,2645)
setPlayerStorageValue(cid,1995,1)
end
return 0
end
return 1
end
Postado
  • Solução

Faça o que falaram acima, caso não dê, comece tudo do zero: 

Primeiramente vá em data/actions/ e abra o arquivo actions.xml:

coloque a tag: <action uniqueid="XXXX" script="YYYY.lua" />

Na tag acima, edite o número onde esta XXXX (normalmente 4 dígitos), lembrando que será um id único, ou seja, não pode ter outro igual. Edite também o YYYY que será o nome do arquivo que você criará para colocar o código, exemplo: quest1.lua (extensão lua)

Feito isso, abra a pasta data/actions/scripts/ e crie um arquivo com o nome que você colocou na tag (YYYY) com extensão lu e coloque o código dentro:

local quest = {item_id = 2645, count = 1, msg = "You won a Steel Boots!", storage = 1995}

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

	if getPlayerStorageValue(cid, quest.storage) < 1 then
		doCreatureSay(cid, quest.msg, TALKTYPE_ORANGE_1)
		doSendMagicEffect(topos, 28)
		doPlayerAddItem(cid, quest.item_id, quest.count)
		setPlayerStorageValue(cid, quest.storage, 1)
	else
		doCreatureSay(cid, "The chest is empty.", TALKTYPE_ORANGE_1)
		doSendMagicEffect(topos, 2)
	end

	return true
end

Qualquer dúvida posta ai!

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo