Ir para conteúdo
  • Cadastre-se

(Resolvido)Summon Spell (Check)


Ir para solução Resolvido por Juninhofdb,

Posts Recomendados

.Qual servidor ou website você utiliza como base?  

0.3.6pl

 

Qual o motivo deste tópico? 

suporte script

 

Está surgindo algum erro? Se sim coloque-o aqui. 

erro creature not found

Citar

 

 

Boa tarde!

 

preciso de uma ajuda neste script ele esta funcionando perfeitamente porém ele tem um addevent de remover o monstro a cada 15 minutos. so que se caso o player logue ou alguem mae esse monstro antes dos 15 minutos da erro no console dizendo creature not found precisava que alguem me ajudase a fazer um check nesse script checando se nao tiver a  creature retorna false

 

 

 

Você tem o código disponível? Se tiver publique-o aqui: 

local t = {
storage = 9998, -- poe numero de storage aqui que não tenha no servidor
timer =  2, -- tempo em segundos sem poder usar dinovo
quant = 1, -- quantidade de summons
summon = "emberwing",  -- nome do summon
nMin = 15, -- tempo em minutos aqui da criatura irá sumir
effect = CONST_ME_MAGIC_RED
}
function onCastSpell(cid, var)
    if exhaustion.check(cid, t.storage) == false then
        if #getCreatureSummons(cid) < t.quant then
            exhaustion.set(cid, t.storage, t.timer * 1)
            local pos = getThingPos(cid)
            local mons = doSummonMonster(cid,t.summon)    
                if #getCreatureSummons(cid) == 1 then
                    local remover = getCreatureSummons(cid)[1] 
                        addEvent(doRemoveCreature, t.nMin * 60 * 1000, remover)
                        doPlayerSendTextMessage(cid, 27, "O summon sera removido em 15 minutos. aproveite!")
                else
                    for i = 1,#getCreatureSummons(cid) do
                    local remover = getCreatureSummons(cid)                 
                        addEvent(doRemoveCreature, t.nMin * 60 * 1000, remover)                    
                    end
                    doPlayerSendTextMessage(cid, 27, "O summon sera removido em 15 minutos. aproveite!")
                end
            doSendMagicEffect(pos, t.effect) 
        else
            doPlayerSendTextMessage(cid, 27, "Voce ja tem criatura summonada")
        return false 
        end    
    else
        doPlayerSendCancel(cid, "Pode summonar outro em :  " ..exhaustion.get(cid, t.storage).." segundos.")
        return false  
    end
return true
end

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 

 

Link para o post
Compartilhar em outros sites
  • Respostas 9
  • Created
  • Última resposta

Top Posters In This Topic

@Juninhofdb testa

local t = {
storage = 9998, -- poe numero de storage aqui que não tenha no servidor
timer =  2, -- tempo em segundos sem poder usar dinovo
quant = 1, -- quantidade de summons
summon = "emberwing",  -- nome do summon
nMin = 15, -- tempo em minutos aqui da criatura irá sumir
effect = CONST_ME_MAGIC_RED
}
function onCastSpell(cid, var)
    if exhaustion.check(cid, t.storage) == false then
        if #getCreatureSummons(cid) < t.quant then
            exhaustion.set(cid, t.storage, t.timer * 1)
            local pos = getThingPos(cid)
            local mons = doSummonMonster(cid,t.summon)    
                if #getCreatureSummons(cid) == 1 then
                    local remover = getCreatureSummons(cid)[1] 
        				if not isCreature(cid) then	return true	end
                        addEvent(doRemoveCreature, t.nMin * 60 * 1000, remover)
                        doPlayerSendTextMessage(cid, 27, "O summon sera removido em 15 minutos. aproveite!")
                else
                    for i = 1,#getCreatureSummons(cid) do
                    local remover = getCreatureSummons(cid) 
        				if not isCreature(cid) then	return true	end      
                        addEvent(doRemoveCreature, t.nMin * 60 * 1000, remover)                    
                    end
                    doPlayerSendTextMessage(cid, 27, "O summon sera removido em 15 minutos. aproveite!")
                end
            doSendMagicEffect(pos, t.effect) 
        else
            doPlayerSendTextMessage(cid, 27, "Voce ja tem criatura summonada")
        return false 
        end    
    else
        doPlayerSendCancel(cid, "Pode summonar outro em :  " ..exhaustion.get(cid, t.storage).." segundos.")
        return false  
    end
return true
end

 

Compre seus Scripts Agora totalmente seguro e de forma rápida, aceitamos também encomendas.

discord.gg/phJZeHa2k4

 

Projeto ATS (Naruto)

Informações Abaixo

Facebook

Youtube
Discord

 

Tutoriais / Conteúdos

Clique Aqui

Link para o post
Compartilhar em outros sites

[04/01/2020 16:02:59] [Error - Spell Interface] 
[04/01/2020 16:02:59] In a timer event called from: 
[04/01/2020 16:02:59] data/spells/scripts/summon/emberwing.lua:onCastSpell
[04/01/2020 16:02:59] Description: 
[04/01/2020 16:02:59] (luaDoRemoveCreature) Creature not found
 

teria que fazer tipo um check antes de passar pelo addevent ele ta jogando direto pro remover que é

 

 

local remover teria que passa pelo codigo que voce colocou antes de remover tentei de varias nao consguei quando crio uma outra function() dentro dessa spells da erro nao deixa 

Link para o post
Compartilhar em outros sites
local t = {
	storage = 9998, -- poe numero de storage aqui que não tenha no servidor
	timer =  2, -- tempo em segundos sem poder usar dinovo
	quant = 1, -- quantidade de summons
	summon = "emberwing",  -- nome do summon
	nMin = 15, -- tempo em minutos aqui da criatura irá sumir
	effect = CONST_ME_MAGIC_RED
}

function onCastSpell(cid, var)
	if exhaustion.check(cid, t.storage) == false then
		if #getCreatureSummons(cid) < t.quant then
			exhaustion.set(cid, t.storage, t.timer)
			local pos = getThingPos(cid)
			local mons = doSummonMonster(cid, t.summon)
			addEvent(function()
				if #getCreatureSummons(cid) > 0 then
					for _, sid in pairs(getCreatureSummons(cid)) do
						if isCreature(sid) then
							doRemoveCreature(sid)
						end
					end
				end
			end, t.nMin * 60 * 1000)
			doPlayerSendTextMessage(cid, 27, "O summon sera removido em 15 minutos. aproveite!")
			doSendMagicEffect(pos, t.effect) 
		else
			doPlayerSendTextMessage(cid, 27, "Voce ja tem criatura summonada")
			return false 
		end    
	else
		doPlayerSendCancel(cid, "Pode summonar outro em :  " ..exhaustion.get(cid, t.storage).." segundos.")
		return false  
	end
	return true
end

 

 

 

 

Nós somos aquilo que fazemos repetidamente. Excelência, não é um modo de agir, mas um hábito.

                                                                                                                                                                                                                                        Aristóteles 

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Estatísticas dos Fóruns

    96847
    Tópicos
    519612
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo