Ir para conteúdo
  • Cadastre-se

(Resolvido)[PEDIDO] Spells Hiraishin Ni No Dan Seal e Hiraishin Ni No Dan


Ir para solução Resolvido por marcot,

Posts Recomendados

Script sem o bug de tirar o target e sem damage:

local config = {
	storageID = 49609,
	mark_time = 10 * 60,
	effectWhenTeleport = 339, -- Efeito ao teleportar
	effectWhenUsed = 152,
}

local errorMsg = {
	pz = "Seu alvo nao pode estar fora do PZ.",
	playerOnly = "Voce so pode usar este jutsu em players.",
	alreadyMarked = "Voce ja marcou um jogador.",
}

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_ENERGYDAMAGE)
setCombatParam(combat, COMBAT_PARAM_EFFECT, 152)
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY)

function onCastSpell(cid, var)
	if isPlayer(getCreatureTarget(cid)) then
		if getPlayerStorageValue (cid, config.storageID) <= 0 then
			setPlayerStorageValue(cid, config.storageID, 1)
			doPlayerSendTextMessage(cid,22, "Voce marcou o player ".. getCreatureName(getCreatureTarget(cid)))
			target = getCreatureTarget(cid)
			doSendMagicEffect(getPlayerPosition(target), 152)
			local struct = {
				left = config.mark_time * 3, 
				player = cid,
				target = target,
				var = var
			}
			addEvent(teleportIsTrue, 333, struct)
		else
			doSendMagicEffect(getPlayerPosition(cid), 2)
			doPlayerSendCancel(cid, errorMsg.alreadyMarked)
			return false
		end
	else
		doSendMagicEffect(getPlayerPosition(cid), 2)
		doPlayerSendCancel(cid, errorMsg.playerOnly)
		return false	
	end
	return doCombat(cid, combat, var)
end

function teleportIsTrue (struct)
	if struct.left ~= 0 then
		if getPlayerStorageValue (struct.player, config.storageID) == 2 then
			doTeleportThing(struct.player, getThingPosition(struct.target), true)
			setPlayerStorageValue(struct.player, config.storageID, 0)
			doSendMagicEffect(getPlayerPosition(struct.player), config.effectWhenTeleport)
			doPlayerSendTextMessage(struct.player,22, "Voce perdeu sua marcacao.")
			return TRUE
		end
		struct.left = struct.left - 1
		addEvent (teleportIsTrue, 333, struct)
	elseif struct.left == 0 then
		doPlayerSendTextMessage(struct.player,22, "Voce perdeu sua marcacao.")
		setPlayerStorageValue(struct.player, config.storageID, 0)
	else
		return FALSE
	end
end
Link para o post
Compartilhar em outros sites
  • Respostas 31
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

@hallanehallex Consegui fazer seguindo as dicas do Wolf. Hiraishin no Jutsu 2.0:   Em data/spells/spells.xml cole: <instant name="Hiraishin No Jutsu" words="hiraishin ni

Ficou muito bom, meus parabéns amigo :D Só tem 1 coisinha: as funções de param de spells só funcionam em players então essa mensagem de playerOnly = "Voce so pode usar este jutsu em players.",

Script sem o bug de tirar o target e sem damage: local config = { storageID = 49609, mark_time = 10 * 60, effectWhenTeleport = 339, -- Efeito ao teleportar effectWhenUsed = 152, } local error

@marcot mano, vlw mesmo funcionou perfeitamente REP++

 

se quiser me ajudar em outro pedido agradeço 

http://www.tibiaking.com/forum/forums/topic/85973-pedido-script-spell-hiraishin-no-jutsu-seal-123-e-hiraishin-no-jutsu-123/

 

Acho que esse /\ /\ expliquei melhor como funciona o script da spell

 

Editado por hallanehallex (veja o histórico de edições)
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

    96851
    Tópicos
    519618
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo