Add project files.
This commit is contained in:
69
LeagueAPI/Models/Challenges/LolChallengesChallengeData.cs
Normal file
69
LeagueAPI/Models/Challenges/LolChallengesChallengeData.cs
Normal file
@@ -0,0 +1,69 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.Challenges;
|
||||
|
||||
public record class LolChallengesChallengeData
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public long Id { get; init; }
|
||||
|
||||
[JsonPropertyName("category")]
|
||||
public string? Category { get; init; }
|
||||
|
||||
[JsonPropertyName("legacy")]
|
||||
public bool Legacy { get; init; }
|
||||
|
||||
[JsonPropertyName("percentile")]
|
||||
public double Percentile { get; init; }
|
||||
|
||||
[JsonPropertyName("position")]
|
||||
public int Position { get; init; }
|
||||
|
||||
[JsonPropertyName("playersInLevel")]
|
||||
public int PlayersInLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("initValue")]
|
||||
public double InitValue { get; init; }
|
||||
|
||||
[JsonPropertyName("previousLevel")]
|
||||
public string? PreviousLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("previousValue")]
|
||||
public double PreviousValue { get; init; }
|
||||
|
||||
[JsonPropertyName("previousThreshold")]
|
||||
public double PreviousThreshold { get; init; }
|
||||
|
||||
[JsonPropertyName("newLevels")]
|
||||
public string[]? NewLevels { get; init; }
|
||||
|
||||
[JsonPropertyName("currentLevel")]
|
||||
public string? CurrentLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("currentValue")]
|
||||
public double CurrentValue { get; init; }
|
||||
|
||||
[JsonPropertyName("currentThreshold")]
|
||||
public double CurrentThreshold { get; init; }
|
||||
|
||||
[JsonPropertyName("currentLevelAchievedTime")]
|
||||
public long CurrentLevelAchievedTime { get; init; }
|
||||
|
||||
[JsonPropertyName("nextLevel")]
|
||||
public string? NextLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("nextThreshold")]
|
||||
public double NextThreshold { get; init; }
|
||||
|
||||
[JsonPropertyName("friendsAtLevels")]
|
||||
public LolChallengesFriendLevelsData[]? FriendsAtLevels { get; init; }
|
||||
|
||||
[JsonPropertyName("idListType")]
|
||||
public string? IdListType { get; init; }
|
||||
|
||||
[JsonPropertyName("availableIds")]
|
||||
public int[]? AvailableIds { get; init; }
|
||||
|
||||
[JsonPropertyName("completedIds")]
|
||||
public int[]? CompletedIds { get; init; }
|
||||
}
|
||||
12
LeagueAPI/Models/Challenges/LolChallengesFriendLevelsData.cs
Normal file
12
LeagueAPI/Models/Challenges/LolChallengesFriendLevelsData.cs
Normal file
@@ -0,0 +1,12 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.Challenges;
|
||||
|
||||
public record class LolChallengesFriendLevelsData
|
||||
{
|
||||
[JsonPropertyName("level")]
|
||||
public string? Level { get; init; }
|
||||
|
||||
[JsonPropertyName("friends")]
|
||||
public string[]? Friends { get; init; }
|
||||
}
|
||||
123
LeagueAPI/Models/Challenges/LolChallengesUIChallenge.cs
Normal file
123
LeagueAPI/Models/Challenges/LolChallengesUIChallenge.cs
Normal file
@@ -0,0 +1,123 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.Challenges;
|
||||
|
||||
public record class LolChallengesUIChallenge
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public long Id { get; init; }
|
||||
|
||||
[JsonPropertyName("name")]
|
||||
public string? Name { get; init; }
|
||||
|
||||
[JsonPropertyName("description")]
|
||||
public string? Description { get; init; }
|
||||
|
||||
[JsonPropertyName("descriptionShort")]
|
||||
public string? DescriptionShort { get; init; }
|
||||
|
||||
[JsonPropertyName("iconPath")]
|
||||
public string? IconPath { get; init; }
|
||||
|
||||
[JsonPropertyName("category")]
|
||||
public string? Category { get; init; }
|
||||
|
||||
[JsonPropertyName("nextLevelIconPath")]
|
||||
public string? NextLevelIconPath { get; init; }
|
||||
|
||||
[JsonPropertyName("currentLevel")]
|
||||
public string? CurrentLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("nextLevel")]
|
||||
public string? NextLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("previousLevel")]
|
||||
public string? PreviousLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("previousValue")]
|
||||
public double PreviousValue { get; init; }
|
||||
|
||||
[JsonPropertyName("currentValue")]
|
||||
public double CurrentValue { get; init; }
|
||||
|
||||
[JsonPropertyName("currentThreshold")]
|
||||
public double CurrentThreshold { get; init; }
|
||||
|
||||
[JsonPropertyName("nextThreshold")]
|
||||
public double NextThreshold { get; init; }
|
||||
|
||||
[JsonPropertyName("pointsAwarded")]
|
||||
public long PointsAwarded { get; init; }
|
||||
|
||||
[JsonPropertyName("percentile")]
|
||||
public double Percentile { get; init; }
|
||||
|
||||
[JsonPropertyName("currentLevelAchievedTime")]
|
||||
public long CurrentLevelAchievedTime { get; init; }
|
||||
|
||||
[JsonPropertyName("position")]
|
||||
public int Position { get; init; }
|
||||
|
||||
[JsonPropertyName("playersInLevel")]
|
||||
public int PlayersInLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("isApex")]
|
||||
public bool IsApex { get; init; }
|
||||
|
||||
[JsonPropertyName("isCapstone")]
|
||||
public bool IsCapstone { get; init; }
|
||||
|
||||
[JsonPropertyName("gameModes")]
|
||||
public string[]? GameModes { get; init; }
|
||||
|
||||
[JsonPropertyName("friendsAtLevels")]
|
||||
public LolChallengesFriendLevelsData[]? FriendsAtLevels { get; init; }
|
||||
|
||||
[JsonPropertyName("parentId")]
|
||||
public long ParentId { get; init; }
|
||||
|
||||
[JsonPropertyName("parentName")]
|
||||
public string? ParentName { get; init; }
|
||||
|
||||
[JsonPropertyName("childrenIds")]
|
||||
public long[]? ChildrenIds { get; init; }
|
||||
|
||||
[JsonPropertyName("capstoneGroupId")]
|
||||
public long CapstoneGroupId { get; init; }
|
||||
|
||||
[JsonPropertyName("capstoneGroupName")]
|
||||
public string? CapstoneGroupName { get; init; }
|
||||
|
||||
[JsonPropertyName("source")]
|
||||
public string? Source { get; init; }
|
||||
|
||||
[JsonPropertyName("thresholds")]
|
||||
public object? Thresholds { get; init; }
|
||||
|
||||
[JsonPropertyName("levelToIconPath")]
|
||||
public Dictionary<string, string>? LevelToIconPath { get; init; }
|
||||
|
||||
[JsonPropertyName("valueMapping")]
|
||||
public string? ValueMapping { get; init; }
|
||||
|
||||
[JsonPropertyName("hasLeaderboard")]
|
||||
public bool HasLeaderboard { get; init; }
|
||||
|
||||
[JsonPropertyName("isReverseDirection")]
|
||||
public bool IsReverseDirection { get; init; }
|
||||
|
||||
[JsonPropertyName("priority")]
|
||||
public double Priority { get; init; }
|
||||
|
||||
[JsonPropertyName("idListType")]
|
||||
public string? IdListType { get; init; }
|
||||
|
||||
[JsonPropertyName("availableIds")]
|
||||
public int[]? AvailableIds { get; init; }
|
||||
|
||||
[JsonPropertyName("completedIds")]
|
||||
public int[]? CompletedIds { get; init; }
|
||||
|
||||
[JsonPropertyName("retireTimestamp")]
|
||||
public long RetireTimestamp { get; init; }
|
||||
}
|
||||
12
LeagueAPI/Models/ChampSelect/BenchChampion.cs
Normal file
12
LeagueAPI/Models/ChampSelect/BenchChampion.cs
Normal file
@@ -0,0 +1,12 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.ChampSelect;
|
||||
|
||||
public record class BenchChampion
|
||||
{
|
||||
[JsonPropertyName("championId")]
|
||||
public int ChampionId { get; init; }
|
||||
|
||||
[JsonPropertyName("isPriority")]
|
||||
public bool IsPriority { get; init; }
|
||||
}
|
||||
15
LeagueAPI/Models/ChampSelect/ChampSelectBannedChampions.cs
Normal file
15
LeagueAPI/Models/ChampSelect/ChampSelectBannedChampions.cs
Normal file
@@ -0,0 +1,15 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.ChampSelect;
|
||||
|
||||
public record class ChampSelectBannedChampions
|
||||
{
|
||||
[JsonPropertyName("myTeamBans")]
|
||||
public int[] MyTeamBans { get; init; } = [];
|
||||
|
||||
[JsonPropertyName("theirTeamBans")]
|
||||
public int[] TheirTeamBans { get; init; } = [];
|
||||
|
||||
[JsonPropertyName("numBans")]
|
||||
public int NumBans { get; init; }
|
||||
}
|
||||
15
LeagueAPI/Models/ChampSelect/ChampSelectChatRoomDetails.cs
Normal file
15
LeagueAPI/Models/ChampSelect/ChampSelectChatRoomDetails.cs
Normal file
@@ -0,0 +1,15 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.ChampSelect;
|
||||
|
||||
public record class ChampSelectChatRoomDetails
|
||||
{
|
||||
[JsonPropertyName("multiUserChatId")]
|
||||
public string? MultiUserChatId { get; init; }
|
||||
|
||||
[JsonPropertyName("multiUserChatPassword")]
|
||||
public string? MultiUserChatPassword { get; init; }
|
||||
|
||||
[JsonPropertyName("mucJwtDto")]
|
||||
public MucJwtDto? MucJwtDto { get; init; }
|
||||
}
|
||||
75
LeagueAPI/Models/ChampSelect/ChampSelectPlayerSelection.cs
Normal file
75
LeagueAPI/Models/ChampSelect/ChampSelectPlayerSelection.cs
Normal file
@@ -0,0 +1,75 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.ChampSelect;
|
||||
|
||||
public record class ChampSelectPlayerSelection
|
||||
{
|
||||
[JsonPropertyName("cellId")]
|
||||
public long CellId { get; init; }
|
||||
|
||||
[JsonPropertyName("championId")]
|
||||
public int ChampionId { get; init; }
|
||||
|
||||
[JsonPropertyName("selectedSkinId")]
|
||||
public int SelectedSkinId { get; init; }
|
||||
|
||||
[JsonPropertyName("wardSkinId")]
|
||||
public long WardSkinId { get; init; }
|
||||
|
||||
[JsonPropertyName("spell1Id")]
|
||||
public ulong Spell1Id { get; init; }
|
||||
|
||||
[JsonPropertyName("spell2Id")]
|
||||
public ulong Spell2Id { get; init; }
|
||||
|
||||
[JsonPropertyName("team")]
|
||||
public int Team { get; init; }
|
||||
|
||||
[JsonPropertyName("assignedPosition")]
|
||||
public string? AssignedPosition { get; init; }
|
||||
|
||||
[JsonPropertyName("championPickIntent")]
|
||||
public int ChampionPickIntent { get; init; }
|
||||
|
||||
[JsonPropertyName("playerType")]
|
||||
public string? PlayerType { get; init; }
|
||||
|
||||
[JsonPropertyName("summonerId")]
|
||||
public ulong SummonerId { get; init; }
|
||||
|
||||
[JsonPropertyName("gameName")]
|
||||
public string? GameName { get; init; }
|
||||
|
||||
[JsonPropertyName("tagLine")]
|
||||
public string? TagLine { get; init; }
|
||||
|
||||
[JsonPropertyName("puuid")]
|
||||
public string? Puuid { get; init; }
|
||||
|
||||
[JsonPropertyName("isHumanoid")]
|
||||
public bool IsHumanoid { get; init; }
|
||||
|
||||
[JsonPropertyName("nameVisibilityType")]
|
||||
public string? NameVisibilityType { get; init; }
|
||||
|
||||
[JsonPropertyName("playerAlias")]
|
||||
public string? PlayerAlias { get; init; }
|
||||
|
||||
[JsonPropertyName("obfuscatedSummonerId")]
|
||||
public ulong ObfuscatedSummonerId { get; init; }
|
||||
|
||||
[JsonPropertyName("obfuscatedPuuid")]
|
||||
public string? ObfuscatedPuuid { get; init; }
|
||||
|
||||
[JsonPropertyName("isAutofilled")]
|
||||
public bool IsAutofilled { get; init; }
|
||||
|
||||
[JsonPropertyName("internalName")]
|
||||
public string? InternalName { get; init; }
|
||||
|
||||
[JsonPropertyName("pickMode")]
|
||||
public int PickMode { get; init; }
|
||||
|
||||
[JsonPropertyName("pickTurn")]
|
||||
public int PickTurn { get; init; }
|
||||
}
|
||||
108
LeagueAPI/Models/ChampSelect/ChampSelectSession.cs
Normal file
108
LeagueAPI/Models/ChampSelect/ChampSelectSession.cs
Normal file
@@ -0,0 +1,108 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.ChampSelect;
|
||||
|
||||
public record class ChampSelectSession
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public string? Id { get; init; }
|
||||
|
||||
[JsonPropertyName("gameId")]
|
||||
public ulong GameId { get; init; }
|
||||
|
||||
[JsonPropertyName("queueId")]
|
||||
public int QueueId { get; init; }
|
||||
|
||||
[JsonPropertyName("timer")]
|
||||
public ChampSelectTimer? Timer { get; init; }
|
||||
|
||||
[JsonPropertyName("chatDetails")]
|
||||
public ChampSelectChatRoomDetails? ChatDetails { get; init; }
|
||||
|
||||
[JsonPropertyName("myTeam")]
|
||||
public ChampSelectPlayerSelection[] MyTeam { get; init; } = [];
|
||||
|
||||
[JsonPropertyName("theirTeam")]
|
||||
public ChampSelectPlayerSelection[] TheirTeam { get; init; } = [];
|
||||
|
||||
[JsonPropertyName("trades")]
|
||||
public ChampSelectSwapContract[] Trades { get; init; } = [];
|
||||
|
||||
[JsonPropertyName("pickOrderSwaps")]
|
||||
public ChampSelectSwapContract[] PickOrderSwaps { get; init; } = [];
|
||||
|
||||
[JsonPropertyName("positionSwaps")]
|
||||
public ChampSelectSwapContract[] PositionSwaps { get; init; } = [];
|
||||
|
||||
[JsonPropertyName("actions")]
|
||||
public object[] Actions { get; init; } = [];
|
||||
|
||||
[JsonPropertyName("bans")]
|
||||
public ChampSelectBannedChampions? Bans { get; init; }
|
||||
|
||||
[JsonPropertyName("localPlayerCellId")]
|
||||
public long LocalPlayerCellId { get; init; }
|
||||
|
||||
[JsonPropertyName("isSpectating")]
|
||||
public bool IsSpectating { get; init; }
|
||||
|
||||
[JsonPropertyName("allowSkinSelection")]
|
||||
public bool AllowSkinSelection { get; init; }
|
||||
|
||||
[JsonPropertyName("allowSubsetChampionPicks")]
|
||||
public bool AllowSubsetChampionPicks { get; init; }
|
||||
|
||||
[JsonPropertyName("allowDuplicatePicks")]
|
||||
public bool AllowDuplicatePicks { get; init; }
|
||||
|
||||
[JsonPropertyName("allowPlayerPickSameChampion")]
|
||||
public bool AllowPlayerPickSameChampion { get; init; }
|
||||
|
||||
[JsonPropertyName("disallowBanningTeammateHoveredChampions")]
|
||||
public bool DisallowBanningTeammateHoveredChampions { get; init; }
|
||||
|
||||
[JsonPropertyName("allowBattleBoost")]
|
||||
public bool AllowBattleBoost { get; init; }
|
||||
|
||||
[JsonPropertyName("boostableSkinCount")]
|
||||
public int BoostableSkinCount { get; init; }
|
||||
|
||||
[JsonPropertyName("allowRerolling")]
|
||||
public bool AllowRerolling { get; init; }
|
||||
|
||||
[JsonPropertyName("rerollsRemaining")]
|
||||
public ulong RerollsRemaining { get; init; }
|
||||
|
||||
[JsonPropertyName("allowLockedEvents")]
|
||||
public bool AllowLockedEvents { get; init; }
|
||||
|
||||
[JsonPropertyName("lockedEventIndex")]
|
||||
public int LockedEventIndex { get; init; }
|
||||
|
||||
[JsonPropertyName("benchEnabled")]
|
||||
public bool BenchEnabled { get; init; }
|
||||
|
||||
[JsonPropertyName("benchChampions")]
|
||||
public BenchChampion[] BenchChampions { get; init; } = [];
|
||||
|
||||
[JsonPropertyName("counter")]
|
||||
public long Counter { get; init; }
|
||||
|
||||
[JsonPropertyName("skipChampionSelect")]
|
||||
public bool SkipChampionSelect { get; init; }
|
||||
|
||||
[JsonPropertyName("hasSimultaneousBans")]
|
||||
public bool HasSimultaneousBans { get; init; }
|
||||
|
||||
[JsonPropertyName("hasSimultaneousPicks")]
|
||||
public bool HasSimultaneousPicks { get; init; }
|
||||
|
||||
[JsonPropertyName("showQuitButton")]
|
||||
public bool ShowQuitButton { get; init; }
|
||||
|
||||
[JsonPropertyName("isLegacyChampSelect")]
|
||||
public bool IsLegacyChampSelect { get; init; }
|
||||
|
||||
[JsonPropertyName("isCustomGame")]
|
||||
public bool IsCustomGame { get; init; }
|
||||
}
|
||||
15
LeagueAPI/Models/ChampSelect/ChampSelectSwapContract.cs
Normal file
15
LeagueAPI/Models/ChampSelect/ChampSelectSwapContract.cs
Normal file
@@ -0,0 +1,15 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.ChampSelect;
|
||||
|
||||
public record class ChampSelectSwapContract
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public long Id { get; init; }
|
||||
|
||||
[JsonPropertyName("cellId")]
|
||||
public long CellId { get; init; }
|
||||
|
||||
[JsonPropertyName("state")]
|
||||
public ChampSelectSwapState State { get; init; }
|
||||
}
|
||||
16
LeagueAPI/Models/ChampSelect/ChampSelectSwapState.cs
Normal file
16
LeagueAPI/Models/ChampSelect/ChampSelectSwapState.cs
Normal file
@@ -0,0 +1,16 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.ChampSelect;
|
||||
|
||||
[JsonConverter(typeof(JsonStringEnumConverter))]
|
||||
public enum ChampSelectSwapState
|
||||
{
|
||||
ACCEPTED,
|
||||
CANCELLED,
|
||||
DECLINED,
|
||||
SENT,
|
||||
RECEIVED,
|
||||
INVALID,
|
||||
BUSY,
|
||||
AVAILABLE
|
||||
}
|
||||
21
LeagueAPI/Models/ChampSelect/ChampSelectTimer.cs
Normal file
21
LeagueAPI/Models/ChampSelect/ChampSelectTimer.cs
Normal file
@@ -0,0 +1,21 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.ChampSelect;
|
||||
|
||||
public record class ChampSelectTimer
|
||||
{
|
||||
[JsonPropertyName("adjustedTimeLeftInPhase")]
|
||||
public long AdjustedTimeLeftInPhase { get; init; }
|
||||
|
||||
[JsonPropertyName("totalTimeInPhase")]
|
||||
public long TotalTimeInPhase { get; init; }
|
||||
|
||||
[JsonPropertyName("phase")]
|
||||
public string? Phase { get; init; }
|
||||
|
||||
[JsonPropertyName("isInfinite")]
|
||||
public bool IsInfinite { get; init; }
|
||||
|
||||
[JsonPropertyName("internalNowInEpochMs")]
|
||||
public ulong InternalNowInEpochMs { get; init; }
|
||||
}
|
||||
18
LeagueAPI/Models/ChampSelect/MucJwtDto.cs
Normal file
18
LeagueAPI/Models/ChampSelect/MucJwtDto.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.ChampSelect;
|
||||
|
||||
public record class MucJwtDto
|
||||
{
|
||||
[JsonPropertyName("jwt")]
|
||||
public string? Jwt { get; init; }
|
||||
|
||||
[JsonPropertyName("channelClaim")]
|
||||
public string? ChannelClaim { get; init; }
|
||||
|
||||
[JsonPropertyName("domain")]
|
||||
public string? Domain { get; init; }
|
||||
|
||||
[JsonPropertyName("targetRegion")]
|
||||
public string? TargetRegion { get; init; }
|
||||
}
|
||||
19
LeagueAPI/Models/DDragon/ChampionResponse.cs
Normal file
19
LeagueAPI/Models/DDragon/ChampionResponse.cs
Normal file
@@ -0,0 +1,19 @@
|
||||
using System.Text.Json.Serialization;
|
||||
using LeagueAPI.Models.DDragon.Champions;
|
||||
|
||||
namespace LeagueAPI.Models.DDragon;
|
||||
|
||||
public record class ChampionResponse
|
||||
{
|
||||
[JsonPropertyName("type")]
|
||||
public string? Type { get; init; }
|
||||
|
||||
[JsonPropertyName("format")]
|
||||
public string? Format { get; init; }
|
||||
|
||||
[JsonPropertyName("version")]
|
||||
public string? Version { get; init; }
|
||||
|
||||
[JsonPropertyName("data")]
|
||||
public Dictionary<string, ChampionData>? Data { get; init; }
|
||||
}
|
||||
42
LeagueAPI/Models/DDragon/Champions/ChampionData.cs
Normal file
42
LeagueAPI/Models/DDragon/Champions/ChampionData.cs
Normal file
@@ -0,0 +1,42 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.DDragon.Champions;
|
||||
|
||||
public record ChampionData
|
||||
{
|
||||
[JsonPropertyName("version")]
|
||||
public string? Version { get; init; }
|
||||
|
||||
[JsonPropertyName("id")]
|
||||
public string? IdName { get; init; }
|
||||
|
||||
[JsonIgnore]
|
||||
public int Id => Key?.ParseInt(-1) ?? -1;
|
||||
|
||||
[JsonPropertyName("key")]
|
||||
public string? Key { get; init; }
|
||||
|
||||
[JsonPropertyName("name")]
|
||||
public string? Name { get; init; }
|
||||
|
||||
[JsonPropertyName("title")]
|
||||
public string? Title { get; init; }
|
||||
|
||||
[JsonPropertyName("blurb")]
|
||||
public string? Blurb { get; init; }
|
||||
|
||||
[JsonPropertyName("info")]
|
||||
public ChampionDataInfo? Info { get; init; }
|
||||
|
||||
[JsonPropertyName("image")]
|
||||
public ChampionDataImage? Image { get; init; }
|
||||
|
||||
[JsonPropertyName("tags")]
|
||||
public string[]? Tags { get; init; }
|
||||
|
||||
[JsonPropertyName("partype")]
|
||||
public string? Partype { get; init; }
|
||||
|
||||
[JsonPropertyName("stats")]
|
||||
public ChampionDataStats? Stats { get; init; }
|
||||
}
|
||||
27
LeagueAPI/Models/DDragon/Champions/ChampionDataImage.cs
Normal file
27
LeagueAPI/Models/DDragon/Champions/ChampionDataImage.cs
Normal file
@@ -0,0 +1,27 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.DDragon.Champions;
|
||||
|
||||
public record ChampionDataImage
|
||||
{
|
||||
[JsonPropertyName("full")]
|
||||
public string? Full { get; init; }
|
||||
|
||||
[JsonPropertyName("sprite")]
|
||||
public string? Sprite { get; init; }
|
||||
|
||||
[JsonPropertyName("group")]
|
||||
public string? Group { get; init; }
|
||||
|
||||
[JsonPropertyName("x")]
|
||||
public int X { get; init; }
|
||||
|
||||
[JsonPropertyName("y")]
|
||||
public int Y { get; init; }
|
||||
|
||||
[JsonPropertyName("w")]
|
||||
public int W { get; init; }
|
||||
|
||||
[JsonPropertyName("h")]
|
||||
public int H { get; init; }
|
||||
}
|
||||
18
LeagueAPI/Models/DDragon/Champions/ChampionDataInfo.cs
Normal file
18
LeagueAPI/Models/DDragon/Champions/ChampionDataInfo.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.DDragon.Champions;
|
||||
|
||||
public record ChampionDataInfo
|
||||
{
|
||||
[JsonPropertyName("attack")]
|
||||
public int Attack { get; init; }
|
||||
|
||||
[JsonPropertyName("defense")]
|
||||
public int Defense { get; init; }
|
||||
|
||||
[JsonPropertyName("magic")]
|
||||
public int Magic { get; init; }
|
||||
|
||||
[JsonPropertyName("difficulty")]
|
||||
public int Difficulty { get; init; }
|
||||
}
|
||||
66
LeagueAPI/Models/DDragon/Champions/ChampionDataStats.cs
Normal file
66
LeagueAPI/Models/DDragon/Champions/ChampionDataStats.cs
Normal file
@@ -0,0 +1,66 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.DDragon.Champions;
|
||||
|
||||
public record ChampionDataStats
|
||||
{
|
||||
[JsonPropertyName("hp")]
|
||||
public float Hp { get; init; }
|
||||
|
||||
[JsonPropertyName("hpperlevel")]
|
||||
public float HpPerLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("mp")]
|
||||
public float Mp { get; init; }
|
||||
|
||||
[JsonPropertyName("mpperlevel")]
|
||||
public float MpPerLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("movespeed")]
|
||||
public float Movespeed { get; init; }
|
||||
|
||||
[JsonPropertyName("armor")]
|
||||
public float Armor { get; init; }
|
||||
|
||||
[JsonPropertyName("armorperlevel")]
|
||||
public float ArmorPerLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("spellblock")]
|
||||
public float Spellblock { get; init; }
|
||||
|
||||
[JsonPropertyName("spellblockperlevel")]
|
||||
public float SpellblockPerLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("attackrange")]
|
||||
public float AttackRange { get; init; }
|
||||
|
||||
[JsonPropertyName("hpregen")]
|
||||
public float HpRegen { get; init; }
|
||||
|
||||
[JsonPropertyName("hpregenperlevel")]
|
||||
public float HpRegenPerLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("mpregen")]
|
||||
public float MpRegen { get; init; }
|
||||
|
||||
[JsonPropertyName("mpregenperlevel")]
|
||||
public float MpRegenPerLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("crit")]
|
||||
public float Crit { get; init; }
|
||||
|
||||
[JsonPropertyName("critperlevel")]
|
||||
public float CritPerLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("attackdamage")]
|
||||
public float AttackDamage { get; init; }
|
||||
|
||||
[JsonPropertyName("attackdamageperlevel")]
|
||||
public float AttackDamagePerLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("attackspeedperlevel")]
|
||||
public float AttackspeedPerLevel { get; init; }
|
||||
|
||||
[JsonPropertyName("attackspeed")]
|
||||
public float Attackspeed { get; init; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.ReadyCheck;
|
||||
|
||||
[JsonConverter(typeof(JsonStringEnumConverter))]
|
||||
public enum LolMatchmakingMatchmakingDodgeWarning
|
||||
{
|
||||
ConnectionWarning,
|
||||
Penalty,
|
||||
Warning,
|
||||
None,
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.ReadyCheck;
|
||||
|
||||
public record class LolMatchmakingMatchmakingReadyCheckResource
|
||||
{
|
||||
[JsonPropertyName("state")]
|
||||
public LolMatchmakingMatchmakingReadyCheckState State { get; init; }
|
||||
|
||||
[JsonPropertyName("playerResponse")]
|
||||
public LolMatchmakingMatchmakingReadyCheckResponse PlayerResponse { get; init; }
|
||||
|
||||
[JsonPropertyName("dodgeWarning")]
|
||||
public LolMatchmakingMatchmakingDodgeWarning DodgeWarning { get; init; }
|
||||
|
||||
[JsonPropertyName("timer")]
|
||||
public float Timer { get; init; }
|
||||
|
||||
[JsonPropertyName("declinerIds")]
|
||||
public ulong[]? DeclinerIds { get; init; }
|
||||
|
||||
[JsonPropertyName("suppressUx")]
|
||||
public bool SuppressUx { get; init; }
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.ReadyCheck;
|
||||
|
||||
[JsonConverter(typeof(JsonStringEnumConverter))]
|
||||
public enum LolMatchmakingMatchmakingReadyCheckResponse
|
||||
{
|
||||
Declined,
|
||||
Accepted,
|
||||
None,
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace LeagueAPI.Models.ReadyCheck;
|
||||
|
||||
[JsonConverter(typeof(JsonStringEnumConverter))]
|
||||
public enum LolMatchmakingMatchmakingReadyCheckState
|
||||
{
|
||||
Error,
|
||||
PartyNotReady,
|
||||
StrangerNotReady,
|
||||
EveryoneReady,
|
||||
InProgress,
|
||||
Invalid,
|
||||
}
|
||||
Reference in New Issue
Block a user