update pokedex.lua

This commit is contained in:
Akamaru 2015-05-24 14:54:03 +02:00
parent 023a8b34f8
commit 595d679d8b

View File

@ -1,6 +1,21 @@
do do
local function get_pokemon(query) local images_enabled = true;
local function get_sprite(path)
local url = "http://pokeapi.co/"..path
print(url)
local b,c = http.request(url)
local data = json:decode(b)
local image = data.image
return image
end
local function callback(extra)
send_msg(extra.receiver, extra.text, ok_cb, false)
end
local function send_pokemon(query, receiver)
local url = "http://pokeapi.co/api/v1/pokemon/" .. query .. "/" local url = "http://pokeapi.co/api/v1/pokemon/" .. query .. "/"
local b,c = http.request(url) local b,c = http.request(url)
local pokemon = json:decode(b) local pokemon = json:decode(b)
@ -8,23 +23,43 @@ local function get_pokemon(query)
if pokemon == nil then if pokemon == nil then
return 'Kein Pokemon gefunden.' return 'Kein Pokemon gefunden.'
end end
return 'Pokédex ID: ' .. pokemon.pkdx_id .. '\n'
..'Name: ' .. pokemon.name .. '\n' local text = 'Pokédex ID: ' .. pokemon.pkdx_id
..'Gewicht: ' .. pokemon.weight .. '\n' ..'\nName: ' .. pokemon.name
..'Größe: ' .. pokemon.height .. '\n' ..'\nGewicht: ' .. pokemon.weight
..'Speed: ' .. pokemon.speed .. '\n' ..'\nGröße: ' .. pokemon.height
..'Spezies: ' .. pokemon.species .. '\n' ..'\nSpeed: ' .. pokemon.speed
..'\nSpezies: ' .. pokemon.species
local image = nil
if images_enabled and pokemon.sprites and pokemon.sprites[1] then
local sprite = pokemon.sprites[1].resource_uri
image = get_sprite(sprite)
end
if image then
image = "http://pokeapi.co"..image
local extra = {
receiver = receiver,
text = text
}
send_photo_from_url(receiver, image, callback, extra)
else
return text
end
end end
local function run(msg, matches) local function run(msg, matches)
local name = string.lower(matches[1]) local receiver = get_receiver(msg)
return get_pokemon(name) local query = URL.escape(matches[1])
return send_pokemon(query, receiver)
end end
return { return {
description = "Pokedex für Telegram", description = "Pokedex für Telegram",
usage = "/pokedex [Name/ID]", usage = {"/pokedex [Name/ID]","/pokemon [Name/ID]","/pkmn [Name/ID]"},
patterns = {"^/pokedex (.*)$"}, patterns = {"^/pokedex (.*)$","^/pokemon (.+)$","^/pkmn (.+)$"},
run = run run = run
} }