Ir para conteúdo

Featured Replies

Postado
  • Este é um post popular.

Eae galera, hoje vou fazer uma pequena demonstração de como usar a função doShowTimeByPos, uma das mais novas funções adicionadas na New Lib, que agora está em versão 1.2.

A função:

function doShowTimeByPos(uid, pos, duration, type)
type = type or 20
	for i = 0, (duration - 1) do
	addEvent(function()
		if isCreature(uid) then
			doCreatureSay(uid, tostring(duration - i), type, false, 0, pos)
		end
	end, i * 1000)
	end
return true
end



Se seu server for 0.3.6/0.4 você só vai precisar adicionar essa linha marcada:

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY)
setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1497)

function onCastSpell(cid, var)
	doShowTimeByPos(cid, variantToPosition(var), 20, 20) -- essa linha aqui
	return doCombat(cid, combat, var)
end



do contrário, se ele for das revs mais novas como 1.0 você irá adicionar essa linha:

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY)
setCombatParam(combat, COMBAT_PARAM_CREATEITEM, 1497)

function onCastSpell(cid, var)
	doShowTimeByPos(cid, variantToPosition(var), 20, 35) -- essa linha aqui
	return doCombat(cid, combat, var)
end



Esses valores são a duração (20 segundos que é o tempo de duração da magic wall) e 20/35 é o TALKTYPE do tipo monster (cor laranja), seguindo a tabela do data\lib\constant.lua:

TALKTYPE_FIRST = 1
TALKTYPE_WHISPER = 2
TALKTYPE_YELL = 3
TALKTYPE_PRIVATE_PN = 4
TALKTYPE_PRIVATE_NP = 5
TALKTYPE_PRIVATE = 6
TALKTYPE_CHANNEL_Y = 7
TALKTYPE_CHANNEL_W = 8
TALKTYPE_RVR_CHANNEL = 9
TALKTYPE_RVR_ANSWER = 10
TALKTYPE_RVR_CONTINUE = 11
TALKTYPE_BROADCAST = 12
TALKTYPE_CHANNEL_RN = 13
TALKTYPE_PRIVATE_RED = 14
TALKTYPE_CHANNEL_O = 15
TALKTYPE_CHANNEL_RA = 17
TALKTYPE_MONSTER = 19
TALKTYPE_MONSTER_YELL = 20

Aqui tem uma imagem de como fica no server.


M8ZCUE0.jpg



Note que eu fiz pra magic wall mas vale pra qualquer item que tenha duration, pra quests, pra contar tempo de invencibilidade de alguma spell ou oque você quiser, use a criatividade e explore o máximo dessa função. Abraços.

  • Respostas 42
  • Visualizações 9.8k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Eae galera, hoje vou fazer uma pequena demonstração de como usar a função doShowTimeByPos, uma das mais novas funções adicionadas na New Lib, que agora está em versão 1.2. A função: Se seu s

  • tenta assim   spells > scripts > support   magic wall rune.lua   local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY) setCombatParam(combat

  • uhauha rlx, não é chato pra mim.. testa assim:   local combat = createCombatObject() setCombatParam(combat, COMBAT_PARAM_DISTANCEEFFECT, CONST_ANI_ENERGY) setCombatParam(combat, COMBAT_PARAM_CREATE

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.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo