JO
pedido scripts

[Resolvido] System de mission ou saga para tibia 8.60

Por JoaolucasProjec, 27 de fev. de 2019 em Resolvidos

6
2.2k
27 de fevereiro de 2019 às 23:42

Há ideia é a seguinte.

Queria um script que após eu matar certo monstro ele desse um storage seguinte para os proximos monstros da missões para ser em ordem os 1,2 e 3 e assim por diante. Cada monstro que com seu storage.

Porém o player só possa fazer uma vez.

Alguém pode me dar uma força testei muitos e nada deu certo ainda.

Obrigado galera.

Eu não inserir nada porque não tenho nada parecido com esse system.

Yan LiimaY
28 de fevereiro de 2019 às 00:12

Eu utilizo saga em meu servidor, no total são 58. Coisas assim você não acha nos fórum pelo fato de ser meio chato ao tentar ajudar, meio complexo! Entende de script? eu poderia te fornecer a base do talkactions, e com base nele você teria que editar da maneira que desejar, e em seguida editar NPcs para setar a storage. Ex: Fale com X NPC e mate X monstro. No caso você estaria sem storage. Ao fazer isso iria setar == 1 de storage no player. E com base nisso poderia dar continuidade em outras sagas, alterando o valor da storage para == 2 e assim por diante. Cada valor é uma saga diferente, não podendo repetir a anterior.

 

28 de fevereiro de 2019 às 12:51

Eu seria muito grato se você me ajuda se.

Entendo sim, posso configurar aqui.

Muito obrigado por está tentando ajuda o meu tibia e a galera também acho que gostará dessa ajuda.

Thanks.

Yan LiimaY
01 de março de 2019 às 19:09
function onSay(cid, words, param)

if getPlayerStorageValue(cid,8000) == 1 then
doPlayerSendTextMessage(cid, 19,"Converse com X e Treine")

elseif getPlayerStorageValue(cid,8000) == 2 then
doPlayerSendTextMessage(cid, 19,"Mate X")

elseif getPlayerStorageValue(cid,8000) == 3 then
doPlayerSendTextMessage(cid, 19,"Salve X e Mate X")

elseif getPlayerStorageValue(cid,8000) >= 5 then
doPlayerSendTextMessage(cid, 19,"Parabéns! Você Completou Todas as Sagas haha!")

else
		doPlayerSendTextMessage(cid, 19,"Resgate X e mate X") -- Saga inicial
	end

	return 1
end
<talkaction words="!saga" event="script" value="saga.lua" />

Só pegar como base e editar.

No NPC de ida você poderia por algo como:

if msgcontains(msg, 'yes') then
			if getPlayerStorageValue(cid,8000) >= 1 then		
		    selfSay('Sorry You Cant Do this saga.')	
			else		
            doTeleportThing(cid, { x=132, y=610, z=7})
			selfSay('Ueeeeeee!')
			end
  end

No de volta:

if msgcontains(msg, 'yes') then
if doPlayerAddItem(cid,2343,1) then -- adc um item por ter feito X saga.
setPlayerStorageValue(cid,8000,1) -- adc storage == 1.
doTeleportThing(cid, { x=89, y=227, z=7}) -- pos
selfSay('Take this for save me') -- msg do npc.
end		
end

É importante utilizar getCreatureCondition(cid, CONDITION_INFIGHT) para verificar se o player está em batalha, caso ele tiver não tem como falar com o NPC.

A ideia seria o seguinte, a talkaction que te passei apenas falaria qual a Saga pro jogador. De acordo com a storage dele. Assim iria pulando de etapa em etapa.

Ali fala para Resgatar alguem e falar com outro alguém. Você teria que ir em um NPC, falar com ele(só funciona se não tiver feito já a saga). Você iria pra um local, e lá teria um outro NPC de volta e um monstro para você matar. Como o NPC não funcionaria em battle, você teria que matar o monstro. Em seguida falar com o NPC para voltar, e assim ganharia uma storage que seria = 1. Assim, avançando para outra saga. Entedeu? ... Pegue como base, faz algo pequeno e teste. 

Editado Março 1 por nedroesdoksdja

02 de março de 2019 às 18:13

Muito Obrigado.

Vou testar aqui. 

valeu a ajuda
 

Yan LiimaY
08 de março de 2019 às 03:25
Melhor resposta
O pedido neste tópico de foi atendido e/ou o autor do tópico resolveu sua duvida. Este tópico está fechado e foi movido para Pedidos - Resolvidos. Se você tiver outros pedidos, crie um novo tópico.