• TibiaFace

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

    .
    demo menumenu

    Afiliados



    Votar:

    [CreatureEvents] Necesito modificar este script.

    Compartir:

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

    lsenturion

    lsenturion
    Miembro
    Miembro
    Descripcion escribió:Buenas! Pueden ayudarme a modificar este Script que cuando un player nivel 300+ Mata a un player debajo del nivel 100, lo mande a la posicion: {x=19000, y=19000, z=7}

    Código:
    local config = {
       affected = 3,
     
       killStorageValue = 3943,
       deathStorageValue = 3944,
     
       
       rewardItem = {
          use = true,
          itemid = 8698,
          minLevel = 300,
          minLevelDiff = 100,
          text = "Este es un premio para |KILLERNAME| [|KILLERLEVEL|] por haber matado a |TARGETNAME| [|TARGETLEVEL|]"
       },
     
       killMessage = {
          use = true,
          text = "Haz matado a |TARGETNAME|!\n\nTienes |KILLERKILLS| kills!",
          messageClass = MESSAGE_STATUS_CONSOLE_BLUE
       },
     
       broadcastMessage = {
          use = true,
          minLevel = false,
          minLevelDiff = false,
          text = "|KILLERNAME| [|KILLERLEVEL|] Ha matado a |TARGETNAME| [|TARGETLEVEL|]!",
          messageClass = MESSAGE_STATUS_WARNING
       },
     
       killerAnimation = {
          use = true,
          text = "F R A G !",
          color = 186
       },
     
       targetAnimation = {
          use = true,
          text = "D E A D !",
          color = 186
       }
    }
     
    function onDeath(cid, corpse, deathList)
       for i = 1, math.min(config.affected, getConfigInfo('deathAssistCount')) do
          local killer = deathList[i]
          if(isPlayer(killer) == TRUE) then
             local targetKills = math.max(0, getPlayerStorageValue(cid, config.killStorageValue)) + 1
             local targetDeaths = math.max(0, getPlayerStorageValue(cid, config.deathStorageValue)) + 1
     
             local killerKills = math.max(0, getPlayerStorageValue(killer, config.killStorageValue)) + 1
             local killerDeaths = math.max(0, getPlayerStorageValue(killer, config.deathStorageValue)) + 1
     
             setPlayerStorageValue(killer, config.killStorageValue, targetKills)
             setPlayerStorageValue(cid, config.deathStorageValue, targetDeaths)
     
             local killerLevel = getPlayerLevel(killer)
             local targetLevel = getPlayerLevel(cid)
             local levelDiff = targetLevel - killerLevel
     
             local values = {
                ["KILLERKILLS"] = killerKills,
                ["KILLERDEATHS"] = killerDeaths,
                ["KILLERNAME"] = getCreatureName(killer),
                ["KILLERLEVEL"] = killerLevel,
     
                ["TARGETKILLS"] = targetKills,
                ["TARGETDEATHS"] = targetDeaths,
                ["TARGETNAME"] = getCreatureName(cid),
                ["TARGETLEVEL"] = targetLevel
             }
     
             function formateString(str)
                return(str:gsub("|([A-Z]+)|", (function(a) return values[a] end)))
             end
     
             if(config.rewardItem.use and (not config.rewardItem.minLevel or targetLevel >= config.rewardItem.minLevel) and (not config.rewardItem.minLevelDiff or levelDiff >= config.rewardItem.minLevelDiff)) then
                local uid = doPlayerAddItem(killer, config.rewardItem.itemid, 1)
              doItemSetAttribute(uid, "description", formateString(config.rewardItem.text))
             end
             if(config.killMessage.use) then
                doPlayerSendTextMessage(killer, config.killMessage.messageClass, formateString(config.killMessage.text))
             end
             if(config.broadcastMessage.use and (not config.broadcastMessage.minLevel or getPlayerLevel(cid) >= config.broadcastMessage.minLevel) and (not config.broadcastMessage.minLevelDiff or levelDiff >= config.broadcastMessage.minLevelDiff)) then
                broadcastMessage(formateString(config.broadcastMessage.text), config.broadcastMessage.messageClass)
             end
             if(config.killerAnimation.use) then
                doSendAnimatedText(getCreaturePosition(killer), config.killerAnimation.text, config.killerAnimation.color)
             end
             if(config.targetAnimation.use) then
             doSendMagicEffect(getCreaturePosition(cid), 62)
                doSendAnimatedText(getCreaturePosition(cid), config.targetAnimation.text, config.targetAnimation.color)
             end
          end
       end
     
       return true
    end
    Imagen Explicativa escribió:Imagen Explicativa: [CreatureEvents] Necesito modificar este script. Tibiaf10
    Version del Scripts: TFs 0.4.0

    2 participantes
    http://krudaserver.com

    GalaxyDev

    GalaxyDev
    Miembro
    Miembro
    lsenturion escribió:
    Descripcion escribió:Buenas! Pueden ayudarme a modificar este Script que cuando un player nivel 300+ Mata a un player debajo del nivel 100, lo mande a la posicion: {x=19000, y=19000, z=7}

    Código:
    local config = {
       affected = 3,
     
       killStorageValue = 3943,
       deathStorageValue = 3944,
     
       
       rewardItem = {
          use = true,
          itemid = 8698,
          minLevel = 300,
          minLevelDiff = 100,
          text = "Este es un premio para |KILLERNAME| [|KILLERLEVEL|] por haber matado a |TARGETNAME| [|TARGETLEVEL|]"
       },
     
       killMessage = {
          use = true,
          text = "Haz matado a |TARGETNAME|!\n\nTienes |KILLERKILLS| kills!",
          messageClass = MESSAGE_STATUS_CONSOLE_BLUE
       },
     
       broadcastMessage = {
          use = true,
          minLevel = false,
          minLevelDiff = false,
          text = "|KILLERNAME| [|KILLERLEVEL|] Ha matado a |TARGETNAME| [|TARGETLEVEL|]!",
          messageClass = MESSAGE_STATUS_WARNING
       },
     
       killerAnimation = {
          use = true,
          text = "F R A G !",
          color = 186
       },
     
       targetAnimation = {
          use = true,
          text = "D E A D !",
          color = 186
       }
    }
     
    function onDeath(cid, corpse, deathList)
       for i = 1, math.min(config.affected, getConfigInfo('deathAssistCount')) do
          local killer = deathList[i]
          if(isPlayer(killer) == TRUE) then
             local targetKills = math.max(0, getPlayerStorageValue(cid, config.killStorageValue)) + 1
             local targetDeaths = math.max(0, getPlayerStorageValue(cid, config.deathStorageValue)) + 1
     
             local killerKills = math.max(0, getPlayerStorageValue(killer, config.killStorageValue)) + 1
             local killerDeaths = math.max(0, getPlayerStorageValue(killer, config.deathStorageValue)) + 1
     
             setPlayerStorageValue(killer, config.killStorageValue, targetKills)
             setPlayerStorageValue(cid, config.deathStorageValue, targetDeaths)
     
             local killerLevel = getPlayerLevel(killer)
             local targetLevel = getPlayerLevel(cid)
             local levelDiff = targetLevel - killerLevel
     
             local values = {
                ["KILLERKILLS"] = killerKills,
                ["KILLERDEATHS"] = killerDeaths,
                ["KILLERNAME"] = getCreatureName(killer),
                ["KILLERLEVEL"] = killerLevel,
     
                ["TARGETKILLS"] = targetKills,
                ["TARGETDEATHS"] = targetDeaths,
                ["TARGETNAME"] = getCreatureName(cid),
                ["TARGETLEVEL"] = targetLevel
             }
     
             function formateString(str)
                return(str:gsub("|([A-Z]+)|", (function(a) return values[a] end)))
             end
     
             if(config.rewardItem.use and (not config.rewardItem.minLevel or targetLevel >= config.rewardItem.minLevel) and (not config.rewardItem.minLevelDiff or levelDiff >= config.rewardItem.minLevelDiff)) then
                local uid = doPlayerAddItem(killer, config.rewardItem.itemid, 1)
              doItemSetAttribute(uid, "description", formateString(config.rewardItem.text))
             end
             if(config.killMessage.use) then
                doPlayerSendTextMessage(killer, config.killMessage.messageClass, formateString(config.killMessage.text))
             end
             if(config.broadcastMessage.use and (not config.broadcastMessage.minLevel or getPlayerLevel(cid) >= config.broadcastMessage.minLevel) and (not config.broadcastMessage.minLevelDiff or levelDiff >= config.broadcastMessage.minLevelDiff)) then
                broadcastMessage(formateString(config.broadcastMessage.text), config.broadcastMessage.messageClass)
             end
             if(config.killerAnimation.use) then
                doSendAnimatedText(getCreaturePosition(killer), config.killerAnimation.text, config.killerAnimation.color)
             end
             if(config.targetAnimation.use) then
             doSendMagicEffect(getCreaturePosition(cid), 62)
                doSendAnimatedText(getCreaturePosition(cid), config.targetAnimation.text, config.targetAnimation.color)
             end
          end
       end
     
       return true
    end
    Imagen Explicativa escribió:Imagen Explicativa: [CreatureEvents] Necesito modificar este script. Tibiaf10
    Version del Scripts: TFs 0.4.0


    INTENTA PROBAR ESTO QUIZAS FUNCIONA AVISAME QUE ERRORES TE PRESENTA :*




    Código:
    local config = {
      affected = 3,

      killStorageValue = 3943,
      deathStorageValue = 3944,

      rewardItem = {
          use = true,
          itemid = 8698,
          minLevel = 300,
          minLevelDiff = 100,
          text = "Este es un premio para |KILLERNAME| [|KILLERLEVEL|] por haber matado a |TARGETNAME| [|TARGETLEVEL|]"
      },

      killMessage = {
          use = true,
          text = "Has matado a |TARGETNAME|!\n\nTienes |KILLERKILLS| kills!",
          messageClass = MESSAGE_STATUS_CONSOLE_BLUE
      },

      broadcastMessage = {
          use = true,
          minLevel = false,
          minLevelDiff = false,
          text = "|KILLERNAME| [|KILLERLEVEL|] ha matado a |TARGETNAME| [|TARGETLEVEL|]!",
          messageClass = MESSAGE_STATUS_WARNING
      },

      killerAnimation = {
          use = true,
          text = "F R A G !",
          color = 186
      },

      targetAnimation = {
          use = true,
          text = "D E A D !",
          color = 186
      }
    }

    function onDeath(cid, corpse, deathList)
      for i = 1, math.min(config.affected, getConfigInfo('deathAssistCount')) do
          local killer = deathList[i]
          if isPlayer(killer) then
            local targetKills = math.max(0, getPlayerStorageValue(cid, config.killStorageValue)) + 1
            local targetDeaths = math.max(0, getPlayerStorageValue(cid, config.deathStorageValue)) + 1

            local killerKills = math.max(0, getPlayerStorageValue(killer, config.killStorageValue)) + 1
            local killerDeaths = math.max(0, getPlayerStorageValue(killer, config.deathStorageValue)) + 1

            setPlayerStorageValue(killer, config.killStorageValue, targetKills)
            setPlayerStorageValue(cid, config.deathStorageValue, targetDeaths)

            local killerLevel = getPlayerLevel(killer)
            local targetLevel = getPlayerLevel(cid)
            local levelDiff = targetLevel - killerLevel

            local values = {
                ["KILLERKILLS"] = killerKills,
                ["KILLERDEATHS"] = killerDeaths,
                ["KILLERNAME"] = getCreatureName(killer),
                ["KILLERLEVEL"] = killerLevel,

                ["TARGETKILLS"] = targetKills,
                ["TARGETDEATHS"] = targetDeaths,
                ["TARGETNAME"] = getCreatureName(cid),
                ["TARGETLEVEL"] = targetLevel
            }

            function formateString(str)
                return str:gsub("|([A-Z]+)|", values)
            end

            if config.rewardItem.use and (not config.rewardItem.minLevel or targetLevel >= config.rewardItem.minLevel) and (not config.rewardItem.minLevelDiff or levelDiff >= config.rewardItem.minLevelDiff) then
                local uid = doPlayerAddItem(killer, config.rewardItem.itemid, 1)
                doItemSetAttribute(uid, "description", formateString(config.rewardItem.text))
            end
            if config.killMessage.use then
                doPlayerSendTextMessage(killer, config.killMessage.messageClass, formateString(config.killMessage.text))
            end
            if config.broadcastMessage.use and (not config.broadcastMessage.minLevel or killerLevel >= config.broadcastMessage.minLevel) and (not config.broadcastMessage.minLevelDiff or levelDiff >= config.broadcastMessage.minLevelDiff) then
                broadcastMessage(formateString(config.broadcastMessage.text), config.broadcastMessage.messageClass)
            end
            if config.killerAnimation.use then
                doSendAnimatedText(getCreaturePosition(killer), config.killerAnimation.text, config.killerAnimation.color)
            end
            if config.targetAnimation.use then
                doSendMagicEffect(getCreaturePosition(cid), 62)
                doSendAnimatedText(getCreaturePosition(cid), config.targetAnimation.text, config.targetAnimation.color)
            end

            -- Verificar si el nivel del jugador muerto es menor que 100 y el nivel del asesino es mayor o igual a 300
            if targetLevel < 100 and killerLevel >= 300 then
                doTeleportThing(killer, {x = 19000, y = 19000, z = 7})
            end
          end
      end

      return true
    end




    [Tienes que estar registrado y conectado para ver este vínculo] Servidor 24/7 Full Animes  Smile    MI GITHUB (REVSCRIPTS TFS 1.3-1.5))
    2 participantes

    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).