Ir para conteúdo

[ Resolvido ]


dionatha14

Posts Recomendados

Ola xtibianos, fiço um script que quandoo o player completa a quest ele usa a chest e ganha os 2 addons demonhunter.

Mas tem um problema, apenas characters femininos ganham os addons.

Esta faltando alguma coisa no script que eu nao coloquei se tive por favor corrijam meu script.

function onUse(cid, item,pos)

 

if getPlayerSex(cid) == 0 then

if getPlayerStorageValue(cid,5600) == -1 then

doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MAGIC_RED)

doPlayerAddOutfit(cid, 288, 1)

doPlayerAddOutfit(cid, 288, 2)

doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a full Demonhunter outfit.")

 

elseif getPlayerSex(cid) == 1 then

doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MAGIC_RED)

doPlayerAddOutfit(cid, 288, 1)

doPlayerAddOutfit(cid, 288, 2)

doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a full Demonhunter outfit.")

else

doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")

end

end

return TRUE

end

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

Erro besta:

function onUse(cid, item,pos)

 

if getPlayerSex(cid) == 0 then

if getPlayerStorageValue(cid,5600) == -1 then

...

 

elseif getPlayerSex(cid) == 1 then

...

 

else

...

end

end

 

return TRUE

end

 

Primeiro aqui:

if getPlayerSex(cid) == 0 then

if getPlayerStorageValue(cid,5600) == -1 then

Devia ser:

if getPlayerStorageValue(cid,5600) == -1 then

if getPlayerSex(cid) == 0 then

 

Depois aqui:

else

doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")

end

end

Devia ser:

end

else

doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")

end

 

E mais uma coisa, vc não usou setPlayerStorageValue.

Assim seu player repete a quest o quanto quise.

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

blz , o setPlayerStorageValue é pra nao repetir a quest i o getPlayerStorageValue pra que serve?

 

function onUse(cid, item,pos)

 

if getPlayerSex(cid) == 0 then

if getPlayerStorageValue(cid,5600) == -1 then

doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MAGIC_RED)

doPlayerAddOutfit(cid, 288, 1)

doPlayerAddOutfit(cid, 288, 2)

setPlayerStorageValue(cid,5600,1)

doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a full Demonhunter outfit.")

 

elseif getPlayerSex(cid) == 1 then

doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MAGIC_RED)

doPlayerAddOutfit(cid, 288, 1)

doPlayerAddOutfit(cid, 288, 2)

setPlayerStorageValue(cid,5600,1)

doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a full Demonhunter outfit.")

end

else

doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")

end

return TRUE

end

Agora só character masculinos faz a quest, feminino nao que faze.

tem como vc postar o script completo que vc arrumado?

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

function onUse(cid, item,pos)

if getPlayerStorageValue(cid,5600) == -1 then

local sex = getPlayerSex(cid)
if sex == 0 then
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MAGIC_RED)
doPlayerAddOutfit(cid, 288, 3)
setPlayerStorageValue(cid,5600,1)
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a full Demonhunter outfit.")
elseif sex == 1 then
doSendMagicEffect(getPlayerPosition(cid), CONST_ME_MAGIC_RED)
doPlayerAddOutfit(cid, 289, 3)
setPlayerStorageValue(cid,5600,1)
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You have found a full Demonhunter outfit.")
end

else
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "It is empty.")
end

return TRUE
end

 

Edit~~

 

Arrumei um pequeno erro, o male outfit é 289 e não 288.

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

Só pra responder a pergunta:

blz , o setPlayerStorageValue é pra nao repetir a quest i o getPlayerStorageValue pra que serve?

getPlayerStorageValue = pega o valor do storage (5600), se não existir é igual a -1.

setPlayerStorageValue = adiciona um valor ao storage (5600).

 

Exemplo:

if getPlayerStorageValue(cid,5600) == -1 then

Se StorageValue(5600) for igual a -1.

setPlayerStorageValue(cid,5600,1)

Muda o StorageValue(5600) para 1.

 

Assim a proxima vez que abrir o baú o if será falso (diferete de -1)

Link para o comentário
Compartilhar em outros sites

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