• TibiaFace

    Tibiaface | Una comunidad Open Tibia donde encontras : mapas, scripts, Otserver, npc y amigos etc ...

    .
    demo menumenu

    Afiliados



    Votar:

    [Tutorial] Pisos matan de 1 hit

    Compartir:

    Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje (Página 1 de 1.)

    1heart [Tutorial] Pisos matan de 1 hit Dom Sep 29, 2019 1:36 pm

    Eyow

    Eyow
    Nuevo Miembro
    Nuevo Miembro
    Buenas usuarios de TibiaFace hoy voy a dejar un moveements que consiste en que un player al pisar cierto sqm de tu mapa muera.
    Esto es muy util para una quest.
    Esta probado para cliente 12+.
    Tfs 1.0+

    En primer lugar, iremos a nuestro mapa en el remeres.

    Buscamos el cuadro especifico que queremos que mate de 1 hit al pisarlo y le pondremos un actionid, en mi caso puse: 44500.
    Como es un camino donde hay 2 filas de 6 sqm, tendremos diagonales ya que los players deben de poder cruzar para seguir la quest, asi que empezamos poniendo actionid 44500+1 en cada cuadro que queremos que mate de 1 hit(no pueden haver 2 cuadros juntos o sera imposible pasar).

    Una vez hecho eso, iremos a tuot/data/movements/movements.xml
    Alli pondremos el siguiente codigo:
    Código:

    <movevent event="StepIn" actionid="44500"  script="firefloor.lua"/>

    **Nota, podremos tanto codigo como actionid tengamos.**

    Despues iremos a tuot/data/movements/scripts y creamos el archivo firefloor.lua(o como queramos y que despues coincida con movements.xml.

    Dentro de ese archivo escribiremos el siguiente codigo:
    Código:

    local session, events =
       15 * 60, {}

    function train(cid, time)
        if isPlayer(cid) then
          if os.time() - time >= session then
             events[getPlayerGUID(cid)] = nil
    --En esta linea donde vemos -5015, -10250 es el daño, podeis ponerle mas o menos, la gracia es que mate de 1 toque xD
             doTargetCombatHealth(0, cid, COMBAT_PHYSICALDAMAGE, -5105, -10250, CONST_ME_NONE)
             doTeleportThing(cid, getPlayerMasterPos(cid))

          else
             events[getPlayerGUID(cid)] = addEvent(train, 3000, cid, time)
             local v = getThingPos(cid)

             doTargetCombatHealth(0, cid, COMBAT_FIREDAMAGE, -100500, -250000, CONST_ME_NONE)
             doSendMagicEffect(v, CONST_ME_FIREAREA)
          end
        end
    end

    function onStepIn(cid, item, pos, fromPos)
       if isPlayer(cid) then
          train(cid, os.time())
          doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You lost 10000 health points.")
       end
    end

    function onStepOut(cid, item, pos, fromPos)
       if isPlayer(cid) then
          local v = getPlayerGUID(cid)
          if v then
             stopEvent(events[v])
             events[v] = nil
          end
       end
    end

    Y eso seria todo, recalco:

    Probado en cliente 12.

    Tendreis que acomodar las lineas del movements.xml para que funcione en otras versiones.

    +MG si te ha servido!!!

    2 participantes

    2heart Re: [Tutorial] Pisos matan de 1 hit Dom Sep 29, 2019 1:43 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    excelente +1 (y)



    [Tutorial] Pisos matan de 1 hit YNU5B25
    2 participantes
    http://www.tibiaface.com

    Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje (Página 1 de 1.)

    Permisos de este foro:
    No puedes responder a temas en este foro.

     

    BienvenidosTibiaFace es una comunidad de Open Tibia. Para participar debes estar registrado (click para Regístrate).