Ir para conteúdo
  • 0

Como criar um item que da skill


mylorc

Pergunta

[Resolvido] Olá,galera preciso criar um iten que da skill,alguém pode ajudar?

Se tiver algum script poste porfavor,pode ser skill ML ,obrigado.

 

Obs:falo de um item tipo livro,em que você clicka e recebe o skill,e que pode usar uma vez só.

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

Posts Recomendados

  • 0

Não deu certo.Estou postando o que da life aqui para você dar uma olhada,se você souber mudar life por ml me avisa:

 

 

function onUse(cid, item, fromPosition, itemEx, toPosition)

 

doRemoveItem(item.uid, 1)

doPlayerSendTextMessage(cid, 27, "You won 10.000 points of life.")

return setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) + 10000)

end

Link para o comentário
Compartilhar em outros sites

  • 0

Não deu certo.Estou postando o que da life aqui para você dar uma olhada,se você souber mudar life por ml me avisa:

 

 

function onUse(cid, item, fromPosition, itemEx, toPosition)

 

doRemoveItem(item.uid, 1)

doPlayerSendTextMessage(cid, 27, "You won 10.000 points of life.")

return setCreatureMaxHealth(cid, getCreatureMaxHealth(cid) + 10000)

end

Teste este abaixo:

 

 

function onUse(cid, item, fromPosition, itemEx, toPosition)

if getPlayerStorageValue(cid, 11296) >= 1 then
doPlayerSendCancel(cid, "Voce ja usou este item.")
else
doRemoveItem(item.uid, 1)
setPlayerStorageValue(cid, 11296, 1)
doPlayerAddMagLevel(cid, (getPlayerMagLevel(cid))+10)
doPlayerSendTextMessage(cid, 22, "Você recebeu 10 leveis de magic level.")
return true
end

 

Poste o resultado.

Link para o comentário
Compartilhar em outros sites

  • 0

Adriano, não faltou um end ae não? Ou é só impressão minha?

function onUse(cid, item, fromPosition, itemEx, toPosition)

	if getPlayerStorageValue(cid, 11296) >= 1 then
		doPlayerSendCancel(cid, "Voce ja usou este item.")
	else
		doRemoveItem(item.uid, 1)
		setPlayerStorageValue(cid, 11296, 1)
		doPlayerAddMagLevel(cid, (getPlayerMagLevel(cid))+10)
		doPlayerSendTextMessage(cid, 22, "Você recebeu 10 leveis de magic level.")
	end
return true
end

@adriano é difícil identar o script? *-*

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

  • 0

Desculpa a pergunta de nb, mas como se identa aqui no xtibia? ._.

Eu idento tudo bunitin e talz, só q quando vou passar pra cá, fica "normal".

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

  • 0

Tentemos assim:

Em creaturescripts crie um arquivo e cole isso dentro:

function onLogin(cid)

local pid = getPlayerGUID(cid)
local cfg = {	stg = 15498, -- storage dada ao usar o item.	
ml = 10, -- qtd de ml
}
	if getPlayerStorageValue(cid, cfg.stg) <= 1 then	
		doRemoveCreature(cid)	
		db.query("UPDATE `players` SET `maglevel` = `maglevel` + 10 WHERE `id` = "..pid)
		setPlayerStorageValue(cid, cfg.stg, 2)
	else	
		return false
	end
return TRUE
end 

Em data/actions cole isso:

function onUse(cid, item, fromPosition, itemEx, toPosition)  
	if getPlayerStorageValue(cid, 15498) >= 1 then
		doPlayerSendCancel(cid, "vc já usou o item de ml.")
		return true
	elseif doRemoveItem(item.uid, 1) then	
		setPlayerStorageValue(cid, 15498, 1)	
		doPlayerSendTextMessage(cid, 22, "Porfavor, relogue seu personagem.")
	end
return true
end 

@Edit:

Se caso os de cima não funcionar, tente com esse:

function onUse(cid, item, fromPosition, itemEx, toPosition)

local item = 2160, -- id do item
local pid = getPlayerGUID(cid)
	if getPlayerStorageValue(cid, 15499) <= 1 then
	elseif doPlayerRemoveItem(cid, item) then
		doRemoveCreature(cid)
		db.query("UPDATE `players` SET `maglevel` = `maglevel` + 10 WHERE `id` = "..pid)
		return TRUE
	else
		return false
	end
end

Ps: sou iniciante ainda, caso alguém mais experiente, ache um erro me fale :)

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

  • 0

Fawz eu achei meio estranho esse elseif, acho q ia ficar melhor assim

 

function onUse(cid, item, fromPosition, itemEx, toPosition)  
	if getPlayerStorageValue(cid, 15498) >= 1 then
		doPlayerSendCancel(cid, "vc já usou o item de ml.")
		return false
end

	        if doRemoveItem(item.uid, 1) then	
		setPlayerStorageValue(cid, 15498, 1)	
		doPlayerSendTextMessage(cid, 22, "Porfavor, relogue seu personagem.")
	end
return true
end 
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...