Ir para conteúdo
  • 0

Quando matar boss aparece báu.


ITALOx

Pergunta

Salve xtibia, então, eu queria um script, que quando um player mata o boss, automaticamente ele poderá pegar o báu ao clicar nele, mas, só matando o boss, se ele for só "clicar" pra pegar, irá aparecer uma mensagem dizendo: "Você só poderá pegar o item quando o boss for morto". Agradeço desde já.

@Yan Liima

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 2
  • Diretor

@Thalles Vitor nesse script não tem nada definindo que o jogador matou o boss...

@Italox @diarmaint Todos que ajudarem matar o Boss ganha a storage. Em creaturescripts crie um arquivo.lua e cole isso:

function onDeath(cid, corpse, deathList)
	local monstro, m = {"Yanzito"}, {}
	local storage = 1239854 -- Storage que irá receber
	if isMonster(cid) and isInArray(monstro, getCreatureName(cid)) then
		for _, jogador in pairs(deathList) do
			if isPlayer(jogador) then
				local test = true
				if #m > 0 and isInArray(m, getPlayerIp(jogador)) then
					test = false
				end
				m[#m+1] = getPlayerIp(jogador)
				if test and getPlayerStorageValue(jogador, storage) <= 0 then
						setPlayerStorageValue(jogador, storage,1)
					end
				end
			end
		return true
	end
	return true
end

XML:

<event type="death" name="BossStr" event="script" value="arquivo.lua"/>

Vai no XML do monstro e antes de </monster> coloque isso:

<script>
<event name="BossStr"/>
</script>

No seu actions, na script do bau tu pode por a storage 1239854 para poder abrir. Vou deixar um exemplo:

function onUse(cid, item, frompos, item2, topos)
	if item.uid == 60090 then
	if getPlayerStorageValue(cid,1239854) >= 2 then
	doPlayerSendTextMessage(cid,25,"Você já recebeu seu item.")
	return true
	end
    if getPlayerStorageValue(cid,1239854) <= 0 then
      doPlayerSendTextMessage(cid,25,"Você precisa matar o Boss antes.")
	  else
			doPlayerSendTextMessage(cid,25,"Parabens!")
            doPlayerAddItem(cid,2631,1)
			setPlayerStorageValue(cid,1239854,2)
		end
		return true
	end
  end
<action uniqueid="60090" script="arquivo.lua" />

Ai é só por o UniqueID 60090 no baú.

Link para o comentário
Compartilhar em outros sites

  • 0
3 minutos atrás, Thalles Vitor disse:

Basicamente, voce quer que quando um monstro morrer dar um


doCreateItem

?

No caso quando morrer, criar um bau? ou você quer que só possa pegar o bau se tiver matado o boss?

Ao matar o boss.

Link para o comentário
Compartilhar em outros sites

  • 0
18 horas atrás, Yan Liima disse:

@Thalles Vitor nesse script não tem nada definindo que o jogador matou o boss...

@Italox @diarmaint Todos que ajudarem matar o Boss ganha a storage. Em creaturescripts crie um arquivo.lua e cole isso:


function onDeath(cid, corpse, deathList)
	local monstro, m = {"Yanzito"}, {}
	local storage = 1239854 -- Storage que irá receber
	if isMonster(cid) and isInArray(monstro, getCreatureName(cid)) then
		for _, jogador in pairs(deathList) do
			if isPlayer(jogador) then
				local test = true
				if #m > 0 and isInArray(m, getPlayerIp(jogador)) then
					test = false
				end
				m[#m+1] = getPlayerIp(jogador)
				if test and getPlayerStorageValue(jogador, storage) <= 0 then
						setPlayerStorageValue(jogador, storage,1)
					end
				end
			end
		return true
	end
	return true
end

XML:


<event type="death" name="BossStr" event="script" value="arquivo.lua"/>

Vai no XML do monstro e antes de </monster> coloque isso:


<script>
<event name="BossStr"/>
</script>

No seu actions, na script do bau tu pode por a storage 1239854 para poder abrir. Vou deixar um exemplo:


function onUse(cid, item, frompos, item2, topos)
	if item.uid == 60090 then
	if getPlayerStorageValue(cid,1239854) >= 2 then
	doPlayerSendTextMessage(cid,25,"Você já recebeu seu item.")
	return true
	end
    if getPlayerStorageValue(cid,1239854) <= 0 then
      doPlayerSendTextMessage(cid,25,"Você precisa matar o Boss antes.")
	  else
			doPlayerSendTextMessage(cid,25,"Parabens!")
            doPlayerAddItem(cid,2631,1)
			setPlayerStorageValue(cid,1239854,2)
		end
		return true
	end
  end

<action uniqueid="60090" script="arquivo.lua" />

Ai é só por o UniqueID 60090 no baú.

Vou tentar aqui, se dê certo, aviso, e dou a melhor reposta.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...