Ir para conteúdo

Featured Replies

Postado

Versão testada : 8.6

 

a TAG tem 2 tipos uma com % da mana e outra com valor fixo, vou disponibilizar as 2 tags vc escolhe o que preferir.

<!-- Custom AVP Spells -->
	<instant name="SumonScript " words="Msg que vai sumonar você escolhe" lvl="lvl minimo para usar" maglv="ml para usar" manapercent="quanto gasta de mana em porcentagem 1,20,50,100" exhaustion="2000" needlearn="0" event="script" value="summon/summon_script.lua">
		<vocation id="1"/>-- vocations do server que pode usar  a magia , mecha de acordo com sua vontade
		<vocation id="2"/>
		<vocation id="3"/>
		<vocation id="4"/>
	</instant>

ou essa TAG

	<!-- Custom AVP Spells -->
	<instant name="SummonScript" words="msg" lvl="40" maglv="ml para usar" mana="100" exhaustion="2000" needlearn="0" event="script" value="summon/Gnomo.lua">
		<vocation id="1"/>
		<vocation id="2"/>
		<vocation id="3"/>
		<vocation id="4"/>		
	</instant>

 

segue abaixo o lua. criei arquivo chamado summon_script.lua dentro da pasta data/spells/summon

Versão 1.2 do script (update) -- seguindo problema indicado pelo @KotZletY  atualizei o script..

Spoiler


local t = {
storage = 9998, --poe numero de storage aqui que não tenha no servidor
timer =  1, --tempo em segundos sem poder usar dinovo
quant = 3, -- quantidade de monstros sumonados
summon = "Demon",  -- poe name do monstro aqui
nMin = 15, -- tempo em segundos aqui da creatura sumir
effect = CONST_ME_MAGIC_RED
}
function onCastSpell(cid, var)
-- exhaustion.set(cid, t.storage, -1)
	if exhaustion.check(cid, t.storage) == false then
		if #getCreatureSummons(cid) < t.quant then
			local pos = getThingPos(cid)
			local mons = doSummonMonster(cid,t.summon)	
				doSendMagicEffect(pos, t.effect) 
				-- exhaustion.set(cid, t.storage, timer*1000)-- se sua tfs e em milisegundos deixa essa
				exhaustion.set(cid, t.storage, timer*1)-- se sua tfs e em segundos poe essa 
				doPlayerSendTextMessage(cid, 27, "Você summonou um "..t.summon..". Aproveite!")	
				doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Seu summon será removido em "..t.nMin.." segundos. Aproveite seu summon!")
				addEvent(function()
					local summon = getCreatureSummons(cid)
						if #summon == 1 then
						local remover = summon[1] 
							doRemoveCreature(remover)
						else
							for i = 1,#summon do
								local remover = summon[i] 			
								doRemoveCreature(remover)					
							end
						end	
						end, t.nMin * 1000)
			print(""..getCreatureName(cid).." summonou um "..t.summon.."!")
		else
			doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Você já 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

 

 

Agora o summon prefiro deixa a escolha de vocês so por o nome do monstro do seu servidor lem cima na tabela t.summon

eu puis o nome do demon uma creatura do tibia.

Postado
  • Autor
2 horas atrás, KotZletY disse:

@Cerberus summone 2 summons e aguarde, o check da storage está incorreto e não está setando corretamente:

 

 

testei aqui e funcionou vou verificar agora.

minha TF tenho que setar por segundo em 1 em vez de 1000. se  não da exaustão com valor errado. minha tfs e 1 segundo em vez de 1000 vou ver aqui mais se eu por tempo * 1000 da erro..

se sua tf e outro e so mudar o 1 para 1000. 

olha se eu deixa assim

exhaustion.set(cid, t.storage, t.timer*1000)

 

image.thumb.png.940dd8b6bfca3c018354dfd8c5d8771c.png

normal aqui.

image.thumb.png.f1dc61e27da6bae23bbd8f266b7583e6.pngCbwVve2.png

image.png.3aabc5e70dcdbf0e6f797a90d7fc55ae.pngzY8T1uh.pngb3GUl1c.png

  • 2 years later...

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