Source code for r6statsapi.player

from typing import Dict, List

from .enums import Platform, Regions

__all__ = (
    "Player",
    "Operators",
    "Weapons",
    "Seasonal",
    "WeaponCategories",
    "Gamemodes",
    "Queue",
    "Leaderboard",
)


[docs]class Player: """ "Player() Represents R6 Player Attributes ---------- platform: `Platform` Player's platform. username: str Player's username (display name) avatar_url_256: str Player's 256x256 Avatar avatar_url_146: str Player's 146x146 Avatar aliases: list List of previous user aliases. level: int Player's level. lootbox_probability: int Player's probability of getting a lootbox. total_xp: int Players total XP. """ def __init__(self, *, platform: Platform, data: Dict): self.name: str = data.get("username", "") self.username: str = self.name self.platform = platform self.avatar_url_256: str = data.get("avatar_url_256", "") self.avatar_url_146: str = data.get("avatar_url_146", "") # generic self.aliases: List = data.get("aliases", []) self.progression: Dict = data.get("progression", {}) self.level: int = self.progression.get("level", 0) self.lootbox_probability: int = self.progression.get("lootbox_probability") self.total_xp: int = self.progression.get("total_xp") self.all_stats: Dict = data.get("stats", {}) self.general_stats: Dict = self.all_stats.get("general") self.queue_stats: Dict = self.all_stats.get("queue") self.gamemode_stats: Dict = self.all_stats.get("gamemode")
[docs]class Operators: """ "Operators() Represents R6 Player Attributes ---------- platform: `Platform` Player's platform. username: str Player's username (display name) avatar_url_256: str Player's 256x256 Avatar avatar_url_146: str Player's 146x146 Avatar operators: dict Player's operator stats mapped to a dictionary. """ def __init__(self, *, platform: Platform, data: Dict): self.name: str = data.get("username", "") self.username: str = self.name self.platform = platform self.avatar_url_256: str = data.get("avatar_url_256", "") self.avatar_url_146: str = data.get("avatar_url_146", "") self.operators: Dict = data.get("operators", None)
[docs]class Weapons: """ "Weapons() Represents R6 Player Attributes ---------- platform: `Platform` Player's platform. username: str Player's username (display name) avatar_url_256: str Player's 256x256 Avatar avatar_url_146: str Player's 146x146 Avatar weapons: dict Player's weapons stats mapped to a dictionary. """ def __init__(self, *, platform: Platform, data: Dict): self.name: str = data.get("username", "") self.username: str = self.name self.platform = platform self.avatar_url_256: str = data.get("avatar_url_256", "") self.avatar_url_146: str = data.get("avatar_url_146", "") self.weapons: Dict = data.get("weapons", None)
[docs]class Seasonal: """ "Seasonal() Represents R6 Player Attributes ---------- platform: `Platform` Player's platform. username: str Player's username (display name) avatar_url_256: str Player's 256x256 Avatar avatar_url_146: str Player's 146x146 Avatar seasons: dict Player's seasonal stats mapped to a dictionary. """ def __init__(self, *, platform: Platform, data: Dict): self.name: str = data.get("username", "") self.username: str = self.name self.platform = platform self.avatar_url_256: str = data.get("avatar_url_256", "") self.avatar_url_146: str = data.get("avatar_url_146", "") self.seasons: Dict = data.get("seasons", None)
[docs]class WeaponCategories: """ "WeaponCategories() Represents R6 Player Attributes ---------- platform: `Platform` Player's platform. username: str Player's username (display name) avatar_url_256: str Player's 256x256 Avatar avatar_url_146: str Player's 146x146 Avatar weapon_categories: dict Player's weapon categort stats mapped to a dictionary. """ def __init__(self, *, platform: Platform, data: Dict): self.name: str = data.get("username", "") self.username: str = self.name self.platform = platform self.avatar_url_256: str = data.get("avatar_url_256", "") self.avatar_url_146: str = data.get("avatar_url_146", "") self.weapon_categories: Dict = data.get("categories", None)
[docs]class Gamemodes: """ "Gamemodes() Represents R6 Player Attributes ---------- platform: `Platform` Player's platform. username: str Player's username (display name) avatar_url_256: str Player's 256x256 Avatar avatar_url_146: str Player's 146x146 Avatar bomb: dict Player's bomb stats mapped to a dictionary. secure_area: dict Player's secure area stats mapped to a dictionary. hostage: dict Player's hostage stats mapped to a dictionary. """ def __init__(self, *, platform: Platform, data: Dict): self.name: str = data.get("username", "") self.username: str = self.name self.platform = platform self.avatar_url_256: str = data.get("avatar_url_256", "") self.avatar_url_146: str = data.get("avatar_url_146", "") self.all_stats: Dict = data.get("stats", {}) self.gamemode_stats: Dict = self.all_stats.get("gamemode") self.bomb: Dict = self.gamemode_stats.get("bomb") self.secure_area: Dict = self.gamemode_stats.get("secure_area") self.hostage: Dict = self.gamemode_stats.get("hostage")
[docs]class Queue: """ "Queue() Represents R6 Player Attributes ---------- platform: `Platform` Player's platform. username: str Player's username (display name) avatar_url_256: str Player's 256x256 Avatar avatar_url_146: str Player's 146x146 Avatar casual: dict Player's casual stats mapped to a dictionary. ranked: dict Player's ranked stats mapped to a dictionary. other: dict Player's other stats mapped to a dictionary. """ def __init__(self, *, platform: Platform, data: Dict): self.name: str = data.get("username", "") self.username: str = self.name self.platform = platform self.avatar_url_256: str = data.get("avatar_url_256", "") self.avatar_url_146: str = data.get("avatar_url_146", "") self.all_stats: Dict = data.get("stats", {}) self.queue_stats: Dict = self.all_stats.get("queue") self.casual: Dict = self.queue_stats.get("casual") self.ranked: Dict = self.queue_stats.get("ranked") self.other: Dict = self.queue_stats.get("other")
[docs]class Leaderboard: """ "Leaderboard`() Represents R6 Leaderboard Attributes ---------- platform: `Platform` Leaderboard platform. region: `Regions` Leaderboard region leaderboard: list Leaderboard mapped to a list of dictionarys. """ def __init__(self, *, platform: Platform, region: Regions, data: Dict): self.platform = platform self.region = region self.leaderboard = data