ClouDev/CloudBot — pull request #286 by Zarthus (2014-05-30 18:36:58+00:00)
Title: Adds `.armoury`, a command which interacts with the World of Warcraft Armoury API

I'm planning to extend on this later on, but for now, this command works as it. It's very basic but does what it needs to do, as the API (and game) is rather big, and has a lot you can retrieve data from.

For now, all we fetch is: `Name`, `Level`, `Gender`, `Class`, `Realm`, `Achievement Points`, `Honourable Kills`.

Syntax: `.armoury [realm] [character name] [region = eu]`, also supports the American spelling `.armory`
`Realm`: Any realm from any (supported) region. You'll have to specify the region if it is not Europe. Use dashes or underscores if your realm contains a space.
`Character name`: Name of your character, it can be any unicode name, but may not be longer than 18 characters, or contain digits.
`Region`: By default Europe, supported regions are `eu (Europe)`, `us (United States)`, `sea (South East Asia)`, `kr (Korea)`, `tw (Taiwan)`, which should cover all of them.

An example message string by `.armoury` is:
```
(19:03:40) .armoury stormrage zarthus
(19:03:41) (Zarthus) Zarthus is a level 90 female Death Knight on Stormrage with 5515 achievement points and 124 honourable kills. Armoury Profile: http://is.gd/opjtNZ

(19:48:14) <@Zarthus> .armoury borean_tundra shuliay us
(19:48:15) (Zarthus) Shuliay is a level 90 female Shaman on Borean Tundra with 9410 achievement points and 4646 honourable kills. Armoury Profile: http://is.gd/kGbYmh
```
[Visual Representation](http://i.imgur.com/fKm0eZU.png)

It's been tested, but I'm still very much new to Python, so there may be certain optimizations that I skipped over. I'm open to critique.