NB
dúvida

Item Q Da Vocaçao

Por nbb147, 09 de ago. de 2012 em Scripts

script
52
3.8k
NewtonnotwenN
10 de agosto de 2012 às 15:51

achei o erro, tira isso:

if getPlayerStorageValue(cid, 1992) ~= -1 then

doPlayerSetVocation(cid, getPlayerStorageValue(cid, 1992))

end

 

Cola esse script abaixo:

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

if getPlayerStorageValue(cid,1992) == 1 then

doCreatureSay(cid, "Você ja recebeu a nova vocaçao", TALKTYPE_ORANGE_1)

else if getPlayerLevel(cid) >= 20 then

doCreatureSay(cid, "você recebeu uma nova vocaçao!", TALKTYPE_ORANGE_1)

if getPlayerVocation(cid) == 2 or getPlayerVocation(cid) == 2 then

doPlayerSetVocation(cid, 6)

end

if getPlayerVocation(cid) == 2 or getPlayerVocation(cid) == 2 then

doPlayerSetVocation(cid, 6)

end

if getPlayerVocation(cid) == 2 or getPlayerVocation(cid) == 2 then

doPlayerSetVocation(cid, 6)

end

if getPlayerVocation(cid) == 2 or getPlayerVocation(cid) == 2 then

doPlayerSetVocation(cid, 6)

end

doSendMagicEffect(fromPosition, 2)

doRemoveItem(item.uid)

setPlayerStorageValue(cid,1992,1)

return TRUE

else

doCreatureSay(cid, "Você deve ter level 20 ou mais para usar o Item!",TALKTYPE_ORANGE_1)

end

end

end

Esse script só transforma vocação de id 2 para id 6 (como você me pediu), lembrando que pode ser editado (seguindo o tutorial que apresentei nesse mesmo tópico).

 

Obs: Se algum player usar sem ter a vocação 2 ele não ganha, mas o item some.

 

Pronto, agora me diz se funcionou.

 

@Jhon92

 

Desculpa, não vi direito e achei era outro script.

 

Malz.

Editado Agosto 10 por Newtonnotwen

jhon992J
10 de agosto de 2012 às 16:14

Sinceramente, tem um monte de coisa desnecessária neste script, use esse:

function onUse(cid, item, fromPosition, itemEx, toPosition)
if getPlayerStorageValue(cid,1992) == 1 then
	doCreatureSay(cid, "Você ja recebeu a nova vocação", TALKTYPE_ORANGE_1)
	return true
end
if getPlayerLevel(cid) >= 20 then -- 20, level minimo para usar.
	if getPlayerVocation(cid) == 2 then -- 2, vocação que tem que ser.
		doPlayerSetVocation(cid, 6) -- 6, vocação que irá transformar.
		doSendMagicEffect(fromPosition, 29)
		doRemoveItem(item.uid,1)
		setPlayerStorageValue(cid,1992,1)
	else
		doCreatureSay(cid, "Você não pode receber esta vocação.", TALKTYPE_ORANGE_1)
	end
else
	doCreatureSay(cid, "Você deve ter level 20 ou mais para usar o Item!",TALKTYPE_ORANGE_1)
end
return true
end

 

Reformulei para ficar melhor a execução do mesmo.

Créditos pro @Newtonnotwen.

Editado Agosto 10 por Jhon992

NewtonnotwenN
10 de agosto de 2012 às 16:21

@Jhon992

 

É pra caso ele queira que um mesmo item faça diferentes funções tipo:

 

-Player1 (voc1) usa item x e vira voc3

-Player2 (voc2) usa item x e vira voc4

 

Usando mesmo item.

 

Mas obrigado pela dica.

Editado Agosto 10 por Newtonnotwen

jhon992J
10 de agosto de 2012 às 16:30

Dae o certo é usar arrays e não assim. asdjia

nbb147N
11 de agosto de 2012 às 20:47

gente valeu pelo esforço e tudo mais, mas eu ja resolvi meu problema, valeu por ter ajudado, vou dar o rep pros dois do a um hj e a outro amanha. ty, por favor reportem o topico eu num sei como faz :x

Editado Agosto 11 por nbb147

jhon992J
11 de agosto de 2012 às 21:08

Reportado para moverem!

CriticalC
11 de agosto de 2012 às 21:13

Dúvida sanada, tópico movido.

 

Atenciosamente, Critical.