Bone Overlord.gif The Roost of the Graveborn Quest Spoiler!
Domine Graveborn: todos os bosses e mecânicas ilustradas!
Saiba mais ➔
Winter Tree.png Winter Update 2025
Acompanhe tudo sobre o Winter Update 2025!
Saiba mais ➔
Stag.gif The Order of the Stag Quest Spoiler!
Conheça Isle of Ada: sua quest, missões secundárias e todos os bosses!
Saiba mais ➔

MediaWiki:FeaturedCreatures.js

De Tibia Wiki - A Enciclopédia do Tibia
Revisão de 14h43min de 9 de fevereiro de 2024 por Master Player (discussão | contribs) (Update TibiaData API)
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
Ir para navegação Ir para pesquisar

Nota: Após publicar, você pode ter que limpar o "cache" do seu navegador para ver as alterações.

  • Firefox / Safari: Pressione Shift enquanto clica Recarregar, ou pressione Ctrl-F5 ou Ctrl-R (⌘-R no Mac)
  • Google Chrome: Pressione Ctrl-Shift-R (⌘-Shift-R no Mac)
  • Internet Explorer/Edge: PressioneCtrl enquanto clica Recarregar, ou Pressione Ctrl-F5
  • Opera: Pressione Ctrl-F5.
$(document).ready(function () {

  $.ajax({
    url: 'https://api.tibiadata.com/v4/creatures', dataType: 'json', success: function (res) {
      searchCreatureData(res.creatures.boosted, $('#boostedcreature_home_img'), $('#boostedcreature_home_txt'))
    }
  })

  $.ajax({
    url: 'https://api.tibiadata.com/v4/boostablebosses', dataType: 'json', success: function (res) {
      searchCreatureData(res.boostable_bosses.boosted, $('#boostedboss_home_img'), $('#boostedboss_home_txt'))
    }
  })

  $.ajax({
    url: 'https://api.tibialabs.com/v2/dreamscar/name', success: function (res) {
      searchCreatureData({name: res}, $('#dreamscarboss_home_img'), $('#dreamscarboss_home_txt'))
    }
  })

  function searchCreatureData (boosted, targetImg, targetTxt) {
    try {
      const api = new mw.Api();
      api.get({
        action: 'opensearch',
        search: boosted.name,
        redirects: 'resolve',
        limit: 1
      }).done(function (data) {
        if (data[1] && data[1][0] && data[1][0].toLowerCase() === boosted.name.toLowerCase()) {
          boosted.name = data[1][0]
          targetImg.html(`<a href="/wiki/${boosted.name}"><img src="/wiki/Especial:Redirecionar/file/${boosted.name}.gif" alt="${boosted.name}" style="height: 64px;"></a>`)
          targetTxt.html(`<a style="color:#FFFFFF; text-decoration:none;" class="plainlinks" href="/wiki/${boosted.name}">${boosted.name}</a>`)
        } else {
          fallback(boosted, targetImg, targetTxt)
        }
      });
    } catch (e) {
      fallback(boosted, targetImg, targetTxt)
    }
  }

  function fallback (boosted, targetImg, targetTxt) {
    if (targetImg.children('a').length === 0) {
      targetImg.html(`<a href="#"><img src="${boosted.image_url}" alt="${boosted.name}"></a>`)
      targetTxt.html(`<a style="color:#FFFFFF; text-decoration:none;" class="plainlinks" href="#">${boosted.name}</a>`)
    }
  }
})