Ir para conteúdo

Featured Replies

Postado
  • Autor
7 minutos atrás, Dwarfer disse:

Sim, é normal. 

 

Mano, muito obrigado! Deu muito certo e eu já dei seu REP.

 

só mais uma coisa, e se eu quiser que todos os players que estejam em uma área (VAMOS SUPOR UMA ARENA) também sejam teleportados para o Templo.

dá pra fazer ?

 

  • Respostas 7
  • Visualizações 590
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Em creaturescritps/scripts crie um arquivo:   tpskill.lua     No arquivo do monstro, antes de </monster>, adicione:  <script> <event name="RewardTp"/>

  • Sim, dá sim. Só tenta explicar tudo de uma vez para não ficar esse muda muda rsrsrs. Segue o script:     Valeu!

Posted Images

Postado
  • Solução

Sim, dá sim. Só tenta explicar tudo de uma vez para não ficar esse muda muda rsrsrs. Segue o script:

 

Spoiler

local new_pos = {x = 1, y = 1, z = 1} -- posição para onde o player será teleportado
local addSkill = SKILL_AXE -- qual o skill
local amount = 1 -- quanto de skill adicionará
local arena = {{x=1,y=1,z=1}, {x=1,y=1,z=1}} -- posição do canto superior esquerdo, posição do canto inferior direito da arena

function onDeath(cid, corpse, deathList)
local players = getPlayersInArea(arena[1], arena[2])
for i = 1, #players do
doTeleportThing(players[i], new_pos)
doPlayerAddSkill(players[i], addSkill, amount)
doPlayerSendTextMessage(players[i], MESSAGE_STATUS_CONSOLE_ORANGE, "You have defeated the " .. getCreatureName(cid).."!")
end
doSendMagicEffect(new_pos, CONST_ME_TELEPORT)
return true
end

function doPlayerAddSkill(cid, skill, amount, round)
	local amount = amount or 1
	if(skill == SKILL__LEVEL) then
		return doPlayerAddLevel(cid, amount, round)
	elseif(skill == SKILL__MAGLEVEL) then
		return doPlayerAddMagLevel(cid, amount)
	end
	for i = 1, amount do
		doPlayerAddSkillTry(cid, skill, getPlayerRequiredSkillTries(cid, skill, getPlayerSkillLevel(cid, skill) + 1) - getPlayerSkillTries(cid, skill), false)
	end
	return true
end

function getPlayersInArea(fromPos, toPos)
local players = {}
      for _, pid in ipairs(getPlayersOnline()) do
          if isInRange(getPlayerPosition(pid), fromPos, toPos) then
             table.insert(players, pid)
          end
      end
      return players
end

 

 

Valeu!

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