Ir para conteúdo

Featured Replies

Postado

tenho um servidor baiak 8.6 e nele há um sistema de checar e alertar a bless do player, caso nao tiver, quando ele sai da protecte zone

e tem tambem um item que dá uma bless infinita, mas quando o jogador usa esse item infinito o check bless continua alertando que nao há nenhuma bless

alguem pode me ajudar com isso por favor ?

itembless

Spoiler

function onUse(cid, item)

  doRemoveItem(item.uid,1)

    for a = 1, 5 do
        doPlayerAddBlessing(cid, i)
    end

    for b = 1, 5 do
        doPlayerSetLossPercent(cid, b, 0)
    end

    doPlayerSetLossSkill(cid, 0)
    doSendMagicEffect(getThingPos(cid), 29)
    doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Congratulations, you are able to blessed.")
    return true
end

checkbless

Spoiler

function onThink(cid, lastExecution, thinkInterval)
    if(getTilePzInfo(getCreaturePosition(cid))) == false and getPlayerStorageValue(cid, 23333) <= 0 then
       for b = 1,5 do
           if getPlayerBlessing(cid, b) == false then
          setPlayerStorageValue(cid, 23333, 1)
          return doPlayerSendTextMessage(cid, 22, "Você não tem todas as bless, tome cuidado.")
           end
        end
    elseif (getTilePzInfo(getCreaturePosition(cid))) == true and getPlayerStorageValue(cid, 23333) == 1 then
    setPlayerStorageValue(cid, 23333, -1)
    end
   return true
end

 

Postado

mas ele está sem bless mesmo... o código de check bless ta certinho...

 

no item altera essa parte:

 

    for a = 1, 5 do
        doPlayerAddBlessing(cid, i)
    end

para

    for i = 1, 5 do
        doPlayerAddBlessing(cid, i)
    end

 

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Postado
  • Autor
54 minutos atrás, Vodkart disse:

mas ele está sem bless mesmo... o código de check bless ta certinho...

 

no item altera essa parte:

 


    for a = 1, 5 do
        doPlayerAddBlessing(cid, i)
    end

para


    for i = 1, 5 do
        doPlayerAddBlessing(cid, i)
    end

 

fiz a alteraçao e quando voce usa o item pela primeira vez antes de morrer o checkbless nao avisa mais, mas quando voce morre ele volta a avisar que está sem bless mesmo continuando sem perder item.

ou seja, só funciona na primeira vez que usa, mas ao morrer 1 vez ele volta a dizer que nao tem bless

Postado

Acho que o script funciona corretamente dessa forma ... 

 

function onUse(cid, item)

	-- laço de repetição para adicionar as 5 bless.
	for x = 1, 5 do
		doPlayerAddBlessing(cid, x) -- adicionado a bless X
	end

	--[[ lista de opções de perda na morte
		PLAYERLOSS_EXPERIENCE = 0
		PLAYERLOSS_MANA = 1
		PLAYERLOSS_SKILLS = 2
		PLAYERLOSS_CONTAINERS = 3
		PLAYERLOSS_ITEMS = 4
	]]--

	-- laço de repetição para mudar a perda na morte referente a lista de opções acima.
	for y = 0, 4 do
		doPlayerSetLossPercent(cid, y, 0) -- mudando a opção Y para 0 de perda.
	end

	doPlayerSetLossSkill(cid, 0) -- mudando para perder não perder skills ao morrer.
	doSendMagicEffect(getThingPos(cid), 29) -- soltando efeito escolhido.
	doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Congratulations, you are able to blessed.") -- mensagem ao jogador ao usar o item.
	doRemoveItem(item.uid,1) -- removendo o item usado.

	return true
end


Além do erro que o @Vodkart comentou, acho que tem o erro no segundo laço tbem, pois pelo que pesquisei a lista de perda de opções de morte é de 0 a 4.
 

		PLAYERLOSS_EXPERIENCE = 0
		PLAYERLOSS_MANA = 1
		PLAYERLOSS_SKILLS = 2
		PLAYERLOSS_CONTAINERS = 3
		PLAYERLOSS_ITEMS = 4


Enfim, não sei se essas funções que mudam a perda de EXP e SKILL resolveriam para algo infinito, pois creio que ao morrer, o personagem volta para as configurações padrões ...

Para resolver o problema do item infinito, eu faria um item que daria as 5 bless e também daria uma STORAGE que seria verificada a cada login dando ao jogador as bless.

ONLOGIN

SE STORAGE == 1 ENTÃO
ADD BLESS DE 1 A 5


E no caso da script de checar as bless, colocaria para funcionar penas se o  jogador não tiver a STORAGE acima.

O que acha @Vodkart?

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo