Ir para conteúdo

[Resolvido]Comprar Bless Por Talkaction


JNLPB

Posts Recomendados

eae! Eu gostaria de uma talkaction para que os players possam comprar as 5 bless de uma vez pelo preço de 100k ao dizer !bless. Se alguém puder fazer eu agradeço.

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

Vá no seu OT depois data/talkactions/scripts :

e copie um bloco de notas lá com qualquer script..agora cole ele e abra-o

dentro dele coloque isso :

 

 

local priceBless = 100000

 

function onSay(cid, words, param)

if getPlayerBlessing(cid, 1) or getPlayerBlessing(cid, 2) or getPlayerBlessing(cid, 3) or getPlayerBlessing(cid, 4) or getPlayerBlessing(cid, 5) then

doPlayerSendCancel(cid,'You have already got one or more blessings!')

else

if doPlayerRemoveMoney(cid, priceBless) == TRUE then

doPlayerAddBlessing(cid, 1)

doPlayerAddBlessing(cid, 2)

doPlayerAddBlessing(cid, 3)

doPlayerAddBlessing(cid, 4)

doPlayerAddBlessing(cid, 5)

doSendMagicEffect(getPlayerPosition(cid), CONST_ME_HOLYDAMAGE)

doPlayerSendTextMessage(cid,25,'You have been blessed.')

else

doPlayerSendCancel(cid, "You need "..priceBless.." gold coins to get all blessings!")

end

end

return 1

end

 

Legenda ;

Roxo - dinheiro para cada bless em ROSA

AZUL - Significa ; você precisa de "tanto de dinheiro" para comprar a bless !

VERDE - Você ganhou a bless!

 

depois vá nos talkactions e ponha isso !

<talkaction words="!blessing" script="systembless.lua"/>

 

Mais essas blessing são compradas todas de 1 vez..vc fica 100% protegido..nao perde nada nem de level nem skill!

ali emcima estão separadas 1 por 1 ..mais são compradas todas juntas!

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

local costPerBless = 20000
local bless = {}
function onSay(cid)
for i = 1, 5 do
	if getPlayerBlessing(cid, i) == false then
		table.insert(bless, i)
	end
end
if table.getn(bless) == 0 then
	doPlayerSendTextMessage(cid, 25, "You already have all blessings.")
	doSendMagicEffect(getCreaturePosition(cid), 2)
else
	for i = 1, table.getn(bless) do
		doPlayerAddBlessing(cid, bless[i])
		doPlayerRemoveMoney(cid, costPerBless*table.getn(bless))
	end
	doPlayerSendTextMessage(cid, 25, "You bought "..table.getn(bless).." blessings for "..table.getn(bless)*costPerBless.."!")
end
return true
end

Esse aqui só compra as blessings que o player não tem, além de avisar se já tem todas ele também avisa quantas você comprou, e por quanto comprou.

Como eram 5 blessings por 100 mil, coloquei o custo de cada uma por 20 mil.

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

local costPerBless = 20000
local bless = {}
function onSay(cid)
for i = 1, 5 do
	if getPlayerBlessing(cid, i) == false then
		table.insert(bless, i)
	end
end
if table.getn(bless) == 0 then
	doPlayerSendTextMessage(cid, 25, "You already have all blessings.")
	doSendMagicEffect(getCreaturePosition(cid), 2)
else
	for i = 1, table.getn(bless) do
		doPlayerAddBlessing(cid, bless[i])
		doPlayerRemoveMoney(cid, costPerBless*table.getn(bless))
	end
	doPlayerSendTextMessage(cid, 25, "You bought "..table.getn(bless).." blessings for "..table.getn(bless)*costPerBless.."!")
end
return true
end

Esse aqui só compra as blessings que o player não tem, além de avisar se já tem todas ele também avisa quantas você comprou, e por quanto comprou.

Como eram 5 blessings por 100 mil, coloquei o custo de cada uma por 20 mil.

 

o problema é que mesmo que o player não tenha dinheiro ele compra a bless.

ficaria melhor se fosse apenas um loop.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...