Module valolyticspy.dtos.valorant_api.weapon

Expand source code
from pydantic import BaseModel
from typing import List, Optional
from valolyticspy.dtos.valorant_api.shop_data import ShopData

class AdsStats(BaseModel):
    """
    Represents the statistics for aiming down sights (ADS) of a weapon.
    
    Attributes:
        zoomMultiplier (float): The multiplier applied to the weapon's zoom level.
        fireRate (float): The rate of fire of the weapon while aiming down sights.
        runSpeedMultiplier (float): The multiplier applied to the player's run speed while aiming down sights.
        burstCount (int): The number of bullets fired in a single burst while aiming down sights.
        firstBulletAccuracy (float): The accuracy of the first bullet fired while aiming down sights.
    """
    zoomMultiplier: float
    fireRate: float
    runSpeedMultiplier: float
    burstCount: int
    firstBulletAccuracy: float

class AltShotgunStats(BaseModel):
    """Represents the alternative shotgun statistics in the Valorant API."""

    shotgunPelletCount: int
    burstRate: float

class AirBurstStats(BaseModel):
    """
    Represents the statistics for the AirBurst weapon in Valorant.

    Attributes:
        shotgunPelletCount (int): The number of pellets fired in each burst.
        burstDistance (float): The distance covered by each burst.
    """
    shotgunPelletCount: int
    burstDistance: float

class DamageRange(BaseModel):
    """Represents the damage range of a weapon in Valorant."""
    
    rangeStartMeters: float
    rangeEndMeters: float
    headDamage: float
    bodyDamage: float
    legDamage: float

class WeaponStats(BaseModel):
    """
    Represents the statistics of a weapon in Valorant.
    
    Attributes:
        fireRate (float): The rate of fire of the weapon.
        magazineSize (int): The size of the weapon's magazine.
        runSpeedMultiplier (float): The multiplier applied to the player's run speed when holding the weapon.
        equipTimeSeconds (float): The time it takes to equip the weapon in seconds.
        reloadTimeSeconds (float): The time it takes to reload the weapon in seconds.
        firstBulletAccuracy (float): The accuracy of the first bullet fired from the weapon.
        shotgunPelletCount (int): The number of pellets fired by the weapon if it is a shotgun.
        wallPenetration (str): The level of wall penetration of the weapon.
        feature (Optional[str]): An optional additional feature of the weapon.
        fireMode (Optional[str]): An optional fire mode of the weapon.
        altFireType (Optional[str]): An optional alternate fire type of the weapon.
        adsStats (Optional[AdsStats]): An optional set of statistics for the weapon when aiming down sights.
        altShotgunStats (Optional[AltShotgunStats]): An optional set of statistics for an alternate shotgun mode of the weapon.
        airBurstStats (Optional[AirBurstStats]): An optional set of statistics for an air burst mode of the weapon.
        damageRanges (List[DamageRange]): A list of damage ranges for the weapon.
    """
    fireRate: float
    magazineSize: int
    runSpeedMultiplier: float
    equipTimeSeconds: float
    reloadTimeSeconds: float
    firstBulletAccuracy: float
    shotgunPelletCount: int
    wallPenetration: str
    feature: Optional[str] = None
    fireMode: Optional[str] = None
    altFireType: Optional[str] = None
    adsStats: Optional[AdsStats] = None
    altShotgunStats: Optional[AltShotgunStats] = None
    airBurstStats: Optional[AirBurstStats] = None
    damageRanges: List[DamageRange]

class Chroma(BaseModel):
    """
    Represents a Chroma in the Valorant API.

    Attributes:
        uuid (str): The unique identifier of the Chroma.
        displayName (str): The display name of the Chroma.
        displayIcon (str, optional): The display icon of the Chroma. Defaults to None.
        fullRender (str): The full render of the Chroma.
        swatch (str, optional): The swatch of the Chroma. Defaults to None.
        streamedVideo (str, optional): The streamed video of the Chroma. Defaults to None.
        assetPath (str): The asset path of the Chroma.
    """
    uuid: str
    displayName: str
    displayIcon: Optional[str] = None
    fullRender: str
    swatch: Optional[str] = None
    streamedVideo: Optional[str] = None
    assetPath: str

class Level(BaseModel):
    """
    Represents a level of a weapon in the Valorant API.

    Attributes:
        uuid (str): The unique identifier of the level.
        displayName (str): The display name of the level.
        levelItem (Optional[str]): The level item (if any) associated with the level.
        displayIcon (Optional[str]): The display icon (if any) associated with the level.
        streamedVideo (Optional[str]): The streamed video (if any) associated with the level.
        assetPath (str): The asset path of the level.
    """
    uuid: str
    displayName: str
    levelItem: Optional[str] = None
    displayIcon: Optional[str] = None
    streamedVideo: Optional[str] = None
    assetPath: str

class Skin(BaseModel):
    """
    Represents a skin for a weapon in Valorant.
    
    Attributes:
        uuid (str): The unique identifier of the skin.
        displayName (str): The display name of the skin.
        themeUuid (str): The unique identifier of the theme associated with the skin.
        contentTierUuid (Optional[str]): The unique identifier of the content tier associated with the skin (default: None).
        displayIcon (Optional[str]): The URL of the display icon for the skin (default: None).
        wallpaper (Optional[str]): The URL of the wallpaper for the skin (default: None).
        assetPath (str): The path to the asset file for the skin.
        chromas (List[Chroma]): A list of chromas available for the skin.
        levels (List[Level]): A list of levels for the skin.
    """
    uuid: str
    displayName: str
    themeUuid: str
    contentTierUuid: Optional[str] = None
    displayIcon: Optional[str] = None
    wallpaper: Optional[str] = None
    assetPath: str
    chromas: List[Chroma]
    levels: List[Level]

class Weapon(BaseModel):
    """
    Represents a weapon in the Valorant game.

    Attributes:
        uuid (str): The unique identifier of the weapon.
        displayName (str): The display name of the weapon.
        category (str): The category of the weapon.
        defaultSkinUuid (str): The unique identifier of the default skin for the weapon.
        displayIcon (str): The URL of the display icon for the weapon.
        killStreamIcon (str): The URL of the kill stream icon for the weapon.
        assetPath (str): The path to the asset file for the weapon.
        weaponStats (Optional[WeaponStats]): The statistics of the weapon (optional).
        shopData (Optional[ShopData]): The shop data for the weapon (optional).
        skins (List[Skin]): The list of skins available for the weapon.
    """
    uuid: str
    displayName: str
    category: str
    defaultSkinUuid: str
    displayIcon: str
    killStreamIcon: str
    assetPath: str
    weaponStats: Optional[WeaponStats] = None
    shopData: Optional[ShopData] = None
    skins: List[Skin]

Classes

class AdsStats (**data: Any)

Represents the statistics for aiming down sights (ADS) of a weapon.

Attributes

zoomMultiplier : float
The multiplier applied to the weapon's zoom level.
fireRate : float
The rate of fire of the weapon while aiming down sights.
runSpeedMultiplier : float
The multiplier applied to the player's run speed while aiming down sights.
burstCount : int
The number of bullets fired in a single burst while aiming down sights.
firstBulletAccuracy : float
The accuracy of the first bullet fired while aiming down sights.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Expand source code
class AdsStats(BaseModel):
    """
    Represents the statistics for aiming down sights (ADS) of a weapon.
    
    Attributes:
        zoomMultiplier (float): The multiplier applied to the weapon's zoom level.
        fireRate (float): The rate of fire of the weapon while aiming down sights.
        runSpeedMultiplier (float): The multiplier applied to the player's run speed while aiming down sights.
        burstCount (int): The number of bullets fired in a single burst while aiming down sights.
        firstBulletAccuracy (float): The accuracy of the first bullet fired while aiming down sights.
    """
    zoomMultiplier: float
    fireRate: float
    runSpeedMultiplier: float
    burstCount: int
    firstBulletAccuracy: float

Ancestors

  • pydantic.main.BaseModel

Class variables

var burstCount : int
var fireRate : float
var firstBulletAccuracy : float
var model_computed_fields
var model_config
var model_fields
var runSpeedMultiplier : float
var zoomMultiplier : float
class AirBurstStats (**data: Any)

Represents the statistics for the AirBurst weapon in Valorant.

Attributes

shotgunPelletCount : int
The number of pellets fired in each burst.
burstDistance : float
The distance covered by each burst.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Expand source code
class AirBurstStats(BaseModel):
    """
    Represents the statistics for the AirBurst weapon in Valorant.

    Attributes:
        shotgunPelletCount (int): The number of pellets fired in each burst.
        burstDistance (float): The distance covered by each burst.
    """
    shotgunPelletCount: int
    burstDistance: float

Ancestors

  • pydantic.main.BaseModel

Class variables

var burstDistance : float
var model_computed_fields
var model_config
var model_fields
var shotgunPelletCount : int
class AltShotgunStats (**data: Any)

Represents the alternative shotgun statistics in the Valorant API.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Expand source code
class AltShotgunStats(BaseModel):
    """Represents the alternative shotgun statistics in the Valorant API."""

    shotgunPelletCount: int
    burstRate: float

Ancestors

  • pydantic.main.BaseModel

Class variables

var burstRate : float
var model_computed_fields
var model_config
var model_fields
var shotgunPelletCount : int
class Chroma (**data: Any)

Represents a Chroma in the Valorant API.

Attributes

uuid : str
The unique identifier of the Chroma.
displayName : str
The display name of the Chroma.
displayIcon : str, optional
The display icon of the Chroma. Defaults to None.
fullRender : str
The full render of the Chroma.
swatch : str, optional
The swatch of the Chroma. Defaults to None.
streamedVideo : str, optional
The streamed video of the Chroma. Defaults to None.
assetPath : str
The asset path of the Chroma.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Expand source code
class Chroma(BaseModel):
    """
    Represents a Chroma in the Valorant API.

    Attributes:
        uuid (str): The unique identifier of the Chroma.
        displayName (str): The display name of the Chroma.
        displayIcon (str, optional): The display icon of the Chroma. Defaults to None.
        fullRender (str): The full render of the Chroma.
        swatch (str, optional): The swatch of the Chroma. Defaults to None.
        streamedVideo (str, optional): The streamed video of the Chroma. Defaults to None.
        assetPath (str): The asset path of the Chroma.
    """
    uuid: str
    displayName: str
    displayIcon: Optional[str] = None
    fullRender: str
    swatch: Optional[str] = None
    streamedVideo: Optional[str] = None
    assetPath: str

Ancestors

  • pydantic.main.BaseModel

Class variables

var assetPath : str
var displayIcon : Optional[str]
var displayName : str
var fullRender : str
var model_computed_fields
var model_config
var model_fields
var streamedVideo : Optional[str]
var swatch : Optional[str]
var uuid : str
class DamageRange (**data: Any)

Represents the damage range of a weapon in Valorant.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Expand source code
class DamageRange(BaseModel):
    """Represents the damage range of a weapon in Valorant."""
    
    rangeStartMeters: float
    rangeEndMeters: float
    headDamage: float
    bodyDamage: float
    legDamage: float

Ancestors

  • pydantic.main.BaseModel

Class variables

var bodyDamage : float
var headDamage : float
var legDamage : float
var model_computed_fields
var model_config
var model_fields
var rangeEndMeters : float
var rangeStartMeters : float
class Level (**data: Any)

Represents a level of a weapon in the Valorant API.

Attributes

uuid : str
The unique identifier of the level.
displayName : str
The display name of the level.
levelItem : Optional[str]
The level item (if any) associated with the level.
displayIcon : Optional[str]
The display icon (if any) associated with the level.
streamedVideo : Optional[str]
The streamed video (if any) associated with the level.
assetPath : str
The asset path of the level.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Expand source code
class Level(BaseModel):
    """
    Represents a level of a weapon in the Valorant API.

    Attributes:
        uuid (str): The unique identifier of the level.
        displayName (str): The display name of the level.
        levelItem (Optional[str]): The level item (if any) associated with the level.
        displayIcon (Optional[str]): The display icon (if any) associated with the level.
        streamedVideo (Optional[str]): The streamed video (if any) associated with the level.
        assetPath (str): The asset path of the level.
    """
    uuid: str
    displayName: str
    levelItem: Optional[str] = None
    displayIcon: Optional[str] = None
    streamedVideo: Optional[str] = None
    assetPath: str

Ancestors

  • pydantic.main.BaseModel

Class variables

var assetPath : str
var displayIcon : Optional[str]
var displayName : str
var levelItem : Optional[str]
var model_computed_fields
var model_config
var model_fields
var streamedVideo : Optional[str]
var uuid : str
class Skin (**data: Any)

Represents a skin for a weapon in Valorant.

Attributes

uuid : str
The unique identifier of the skin.
displayName : str
The display name of the skin.
themeUuid : str
The unique identifier of the theme associated with the skin.
contentTierUuid : Optional[str]
The unique identifier of the content tier associated with the skin (default: None).
displayIcon : Optional[str]
The URL of the display icon for the skin (default: None).
wallpaper : Optional[str]
The URL of the wallpaper for the skin (default: None).
assetPath : str
The path to the asset file for the skin.
chromas : List[Chroma]
A list of chromas available for the skin.
levels : List[Level]
A list of levels for the skin.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Expand source code
class Skin(BaseModel):
    """
    Represents a skin for a weapon in Valorant.
    
    Attributes:
        uuid (str): The unique identifier of the skin.
        displayName (str): The display name of the skin.
        themeUuid (str): The unique identifier of the theme associated with the skin.
        contentTierUuid (Optional[str]): The unique identifier of the content tier associated with the skin (default: None).
        displayIcon (Optional[str]): The URL of the display icon for the skin (default: None).
        wallpaper (Optional[str]): The URL of the wallpaper for the skin (default: None).
        assetPath (str): The path to the asset file for the skin.
        chromas (List[Chroma]): A list of chromas available for the skin.
        levels (List[Level]): A list of levels for the skin.
    """
    uuid: str
    displayName: str
    themeUuid: str
    contentTierUuid: Optional[str] = None
    displayIcon: Optional[str] = None
    wallpaper: Optional[str] = None
    assetPath: str
    chromas: List[Chroma]
    levels: List[Level]

Ancestors

  • pydantic.main.BaseModel

Class variables

var assetPath : str
var chromas : List[Chroma]
var contentTierUuid : Optional[str]
var displayIcon : Optional[str]
var displayName : str
var levels : List[Level]
var model_computed_fields
var model_config
var model_fields
var themeUuid : str
var uuid : str
var wallpaper : Optional[str]
class Weapon (**data: Any)

Represents a weapon in the Valorant game.

Attributes

uuid : str
The unique identifier of the weapon.
displayName : str
The display name of the weapon.
category : str
The category of the weapon.
defaultSkinUuid : str
The unique identifier of the default skin for the weapon.
displayIcon : str
The URL of the display icon for the weapon.
killStreamIcon : str
The URL of the kill stream icon for the weapon.
assetPath : str
The path to the asset file for the weapon.
weaponStats : Optional[WeaponStats]
The statistics of the weapon (optional).
shopData : Optional[ShopData]
The shop data for the weapon (optional).
skins : List[Skin]
The list of skins available for the weapon.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Expand source code
class Weapon(BaseModel):
    """
    Represents a weapon in the Valorant game.

    Attributes:
        uuid (str): The unique identifier of the weapon.
        displayName (str): The display name of the weapon.
        category (str): The category of the weapon.
        defaultSkinUuid (str): The unique identifier of the default skin for the weapon.
        displayIcon (str): The URL of the display icon for the weapon.
        killStreamIcon (str): The URL of the kill stream icon for the weapon.
        assetPath (str): The path to the asset file for the weapon.
        weaponStats (Optional[WeaponStats]): The statistics of the weapon (optional).
        shopData (Optional[ShopData]): The shop data for the weapon (optional).
        skins (List[Skin]): The list of skins available for the weapon.
    """
    uuid: str
    displayName: str
    category: str
    defaultSkinUuid: str
    displayIcon: str
    killStreamIcon: str
    assetPath: str
    weaponStats: Optional[WeaponStats] = None
    shopData: Optional[ShopData] = None
    skins: List[Skin]

Ancestors

  • pydantic.main.BaseModel

Class variables

var assetPath : str
var category : str
var defaultSkinUuid : str
var displayIcon : str
var displayName : str
var killStreamIcon : str
var model_computed_fields
var model_config
var model_fields
var shopData : Optional[ShopData]
var skins : List[Skin]
var uuid : str
var weaponStats : Optional[WeaponStats]
class WeaponStats (**data: Any)

Represents the statistics of a weapon in Valorant.

Attributes

fireRate : float
The rate of fire of the weapon.
magazineSize : int
The size of the weapon's magazine.
runSpeedMultiplier : float
The multiplier applied to the player's run speed when holding the weapon.
equipTimeSeconds : float
The time it takes to equip the weapon in seconds.
reloadTimeSeconds : float
The time it takes to reload the weapon in seconds.
firstBulletAccuracy : float
The accuracy of the first bullet fired from the weapon.
shotgunPelletCount : int
The number of pellets fired by the weapon if it is a shotgun.
wallPenetration : str
The level of wall penetration of the weapon.
feature : Optional[str]
An optional additional feature of the weapon.
fireMode : Optional[str]
An optional fire mode of the weapon.
altFireType : Optional[str]
An optional alternate fire type of the weapon.
adsStats : Optional[AdsStats]
An optional set of statistics for the weapon when aiming down sights.
altShotgunStats : Optional[AltShotgunStats]
An optional set of statistics for an alternate shotgun mode of the weapon.
airBurstStats : Optional[AirBurstStats]
An optional set of statistics for an air burst mode of the weapon.
damageRanges : List[DamageRange]
A list of damage ranges for the weapon.

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Expand source code
class WeaponStats(BaseModel):
    """
    Represents the statistics of a weapon in Valorant.
    
    Attributes:
        fireRate (float): The rate of fire of the weapon.
        magazineSize (int): The size of the weapon's magazine.
        runSpeedMultiplier (float): The multiplier applied to the player's run speed when holding the weapon.
        equipTimeSeconds (float): The time it takes to equip the weapon in seconds.
        reloadTimeSeconds (float): The time it takes to reload the weapon in seconds.
        firstBulletAccuracy (float): The accuracy of the first bullet fired from the weapon.
        shotgunPelletCount (int): The number of pellets fired by the weapon if it is a shotgun.
        wallPenetration (str): The level of wall penetration of the weapon.
        feature (Optional[str]): An optional additional feature of the weapon.
        fireMode (Optional[str]): An optional fire mode of the weapon.
        altFireType (Optional[str]): An optional alternate fire type of the weapon.
        adsStats (Optional[AdsStats]): An optional set of statistics for the weapon when aiming down sights.
        altShotgunStats (Optional[AltShotgunStats]): An optional set of statistics for an alternate shotgun mode of the weapon.
        airBurstStats (Optional[AirBurstStats]): An optional set of statistics for an air burst mode of the weapon.
        damageRanges (List[DamageRange]): A list of damage ranges for the weapon.
    """
    fireRate: float
    magazineSize: int
    runSpeedMultiplier: float
    equipTimeSeconds: float
    reloadTimeSeconds: float
    firstBulletAccuracy: float
    shotgunPelletCount: int
    wallPenetration: str
    feature: Optional[str] = None
    fireMode: Optional[str] = None
    altFireType: Optional[str] = None
    adsStats: Optional[AdsStats] = None
    altShotgunStats: Optional[AltShotgunStats] = None
    airBurstStats: Optional[AirBurstStats] = None
    damageRanges: List[DamageRange]

Ancestors

  • pydantic.main.BaseModel

Class variables

var adsStats : Optional[AdsStats]
var airBurstStats : Optional[AirBurstStats]
var altFireType : Optional[str]
var altShotgunStats : Optional[AltShotgunStats]
var damageRanges : List[DamageRange]
var equipTimeSeconds : float
var feature : Optional[str]
var fireMode : Optional[str]
var fireRate : float
var firstBulletAccuracy : float
var magazineSize : int
var model_computed_fields
var model_config
var model_fields
var reloadTimeSeconds : float
var runSpeedMultiplier : float
var shotgunPelletCount : int
var wallPenetration : str