Added support for gain tracking over specified timeframes
This commit is contained in:
1 parent
e3de32c4a5
commit
b157e949dc
12 files changed
+220
No files matched your search
@@ -0,0 +1,9 @@
|
||||
namespace osrs_toolbox
|
||||
{
|
||||
public class ActivityGainData
|
||||
{
|
||||
public string metric { get; set; }
|
||||
public GainData rank { get; set; }
|
||||
public GainData score { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
namespace osrs_toolbox
|
||||
{
|
||||
public class BossGainData
|
||||
{
|
||||
public string metric { get; set; }
|
||||
public GainData ehb { get; set; }
|
||||
public GainData rank { get; set; }
|
||||
public GainData kills { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
namespace osrs_toolbox
|
||||
{
|
||||
public class ComputedGainData
|
||||
{
|
||||
public string metric { get; set; }
|
||||
public GainData value { get; set; }
|
||||
public GainData rank { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
namespace osrs_toolbox
|
||||
{
|
||||
public class GainData
|
||||
{
|
||||
public double gained { get; set; }
|
||||
public double start { get; set; }
|
||||
public double end { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
namespace osrs_toolbox
|
||||
{
|
||||
public class PlayerActivityGains
|
||||
{
|
||||
public ActivityGainData league_points { get; set; }
|
||||
public ActivityGainData bounty_hunter_hunter { get; set; }
|
||||
public ActivityGainData bounty_hunter_rogue { get; set; }
|
||||
public ActivityGainData clue_scrolls_all { get; set; }
|
||||
public ActivityGainData clue_scrolls_beginner { get; set; }
|
||||
public ActivityGainData clue_scrolls_easy { get; set; }
|
||||
public ActivityGainData clue_scrolls_medium { get; set; }
|
||||
public ActivityGainData clue_scrolls_hard { get; set; }
|
||||
public ActivityGainData clue_scrolls_elite { get; set; }
|
||||
public ActivityGainData clue_scrolls_master { get; set; }
|
||||
public ActivityGainData last_man_standing { get; set; }
|
||||
public ActivityGainData pvp_arena { get; set; }
|
||||
public ActivityGainData soul_wars_zeal { get; set; }
|
||||
public ActivityGainData guardians_of_the_rift { get; set; }
|
||||
public ActivityGainData colosseum_glory { get; set; }
|
||||
public ActivityGainData collections_logged { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,77 @@
|
||||
namespace osrs_toolbox
|
||||
{
|
||||
public class PlayerBossGains
|
||||
{
|
||||
public BossGainData abyssal_sire { get; set; }
|
||||
public BossGainData alchemical_hydra { get; set; }
|
||||
public BossGainData amoxliatl { get; set; }
|
||||
public BossGainData araxxor { get; set; }
|
||||
public BossGainData artio { get; set; }
|
||||
public BossGainData barrows_chests { get; set; }
|
||||
public BossGainData brutus { get; set; }
|
||||
public BossGainData bryophyta { get; set; }
|
||||
public BossGainData callisto { get; set; }
|
||||
public BossGainData calvarion { get; set; }
|
||||
public BossGainData cerberus { get; set; }
|
||||
public BossGainData chambers_of_xeric { get; set; }
|
||||
public BossGainData chambers_of_xeric_challenge_mode { get; set; }
|
||||
public BossGainData chaos_elemental { get; set; }
|
||||
public BossGainData chaos_fanatic { get; set; }
|
||||
public BossGainData commander_zilyana { get; set; }
|
||||
public BossGainData corporeal_beast { get; set; }
|
||||
public BossGainData crazy_archaeologist { get; set; }
|
||||
public BossGainData dagannoth_prime { get; set; }
|
||||
public BossGainData dagannoth_rex { get; set; }
|
||||
public BossGainData dagannoth_supreme { get; set; }
|
||||
public BossGainData deranged_archaeologist { get; set; }
|
||||
public BossGainData doom_of_mokhaiotl { get; set; }
|
||||
public BossGainData duke_sucellus { get; set; }
|
||||
public BossGainData general_graardor { get; set; }
|
||||
public BossGainData giant_mole { get; set; }
|
||||
public BossGainData grotesque_guardians { get; set; }
|
||||
public BossGainData hespori { get; set; }
|
||||
public BossGainData kalphite_queen { get; set; }
|
||||
public BossGainData king_black_dragon { get; set; }
|
||||
public BossGainData kraken { get; set; }
|
||||
public BossGainData kreearra { get; set; }
|
||||
public BossGainData kril_tsutsaroth { get; set; }
|
||||
public BossGainData lunar_chests { get; set; }
|
||||
public BossGainData mad_angel { get; set; }
|
||||
public BossGainData maggot_king { get; set; }
|
||||
public BossGainData mimic { get; set; }
|
||||
public BossGainData nex { get; set; }
|
||||
public BossGainData nightmare { get; set; }
|
||||
public BossGainData phosanis_nightmare { get; set; }
|
||||
public BossGainData obor { get; set; }
|
||||
public BossGainData phantom_muspah { get; set; }
|
||||
public BossGainData sarachnis { get; set; }
|
||||
public BossGainData scorpia { get; set; }
|
||||
public BossGainData scurrius { get; set; }
|
||||
public BossGainData shellbane_gryphon { get; set; }
|
||||
public BossGainData skotizo { get; set; }
|
||||
public BossGainData sol_heredit { get; set; }
|
||||
public BossGainData spindel { get; set; }
|
||||
public BossGainData tempoross { get; set; }
|
||||
public BossGainData the_gauntlet { get; set; }
|
||||
public BossGainData the_corrupted_gauntlet { get; set; }
|
||||
public BossGainData the_hueycoatl { get; set; }
|
||||
public BossGainData the_leviathan { get; set; }
|
||||
public BossGainData the_royal_titans { get; set; }
|
||||
public BossGainData the_whisperer { get; set; }
|
||||
public BossGainData theatre_of_blood { get; set; }
|
||||
public BossGainData theatre_of_blood_hard_mode { get; set; }
|
||||
public BossGainData thermonuclear_smoke_devil { get; set; }
|
||||
public BossGainData tombs_of_amascut { get; set; }
|
||||
public BossGainData tombs_of_amascut_expert { get; set; }
|
||||
public BossGainData tzkal_zuk { get; set; }
|
||||
public BossGainData tztok_jad { get; set; }
|
||||
public BossGainData vardorvis { get; set; }
|
||||
public BossGainData venenatis { get; set; }
|
||||
public BossGainData vetion { get; set; }
|
||||
public BossGainData vorkath { get; set; }
|
||||
public BossGainData wintertodt { get; set; }
|
||||
public BossGainData yama { get; set; }
|
||||
public BossGainData zalcano { get; set; }
|
||||
public BossGainData zulrah { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
namespace osrs_toolbox
|
||||
{
|
||||
public class PlayerComputedGains
|
||||
{
|
||||
public ComputedGainData ehp { get; set; }
|
||||
public ComputedGainData ehb { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
namespace osrs_toolbox
|
||||
{
|
||||
public class PlayerGains
|
||||
{
|
||||
public DateTime startsAt { get; set; }
|
||||
public DateTime endsAt { get; set; }
|
||||
public PlayerGainsData data { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
namespace osrs_toolbox
|
||||
{
|
||||
public class PlayerGainsData
|
||||
{
|
||||
public PlayerSkillGains skills { get; set; }
|
||||
public PlayerBossGains bosses { get; set; }
|
||||
public PlayerActivityGains activities { get; set; }
|
||||
public PlayerComputedGains computed { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
namespace osrs_toolbox
|
||||
{
|
||||
public class PlayerSkillGains
|
||||
{
|
||||
public SkillGainData overall { get; set; }
|
||||
public SkillGainData attack { get; set; }
|
||||
public SkillGainData defence { get; set; }
|
||||
public SkillGainData strength { get; set; }
|
||||
public SkillGainData hitpoints { get; set; }
|
||||
public SkillGainData ranged { get; set; }
|
||||
public SkillGainData prayer { get; set; }
|
||||
public SkillGainData magic { get; set; }
|
||||
public SkillGainData cooking { get; set; }
|
||||
public SkillGainData woodcutting { get; set; }
|
||||
public SkillGainData fletching { get; set; }
|
||||
public SkillGainData fishing { get; set; }
|
||||
public SkillGainData firemaking { get; set; }
|
||||
public SkillGainData crafting { get; set; }
|
||||
public SkillGainData smithing { get; set; }
|
||||
public SkillGainData mining { get; set; }
|
||||
public SkillGainData herblore { get; set; }
|
||||
public SkillGainData agility { get; set; }
|
||||
public SkillGainData thieving { get; set; }
|
||||
public SkillGainData slayer { get; set; }
|
||||
public SkillGainData farming { get; set; }
|
||||
public SkillGainData runecrafting { get; set; }
|
||||
public SkillGainData hunter { get; set; }
|
||||
public SkillGainData construction { get; set; }
|
||||
public SkillGainData sailing { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
namespace osrs_toolbox
|
||||
{
|
||||
public class SkillGainData
|
||||
{
|
||||
public string metric { get; set; }
|
||||
public GainData experience { get; set; }
|
||||
public GainData ehp { get; set; }
|
||||
public GainData rank { get; set; }
|
||||
public GainData level { get; set; }
|
||||
}
|
||||
}
|
||||
@@ -8,6 +8,7 @@ namespace osrs_toolbox
|
||||
private static string CompetitionEndpoint = @"https://api.wiseoldman.net/v2/competitions/";
|
||||
private static string GroupEndpoint = @"https://api.wiseoldman.net/v2/groups/";
|
||||
private static string PlayerEndpoint = @"https://api.wiseoldman.net/v2/players/";
|
||||
private static string PlayerGainsEndpoint = @"https://api.wiseoldman.net/v2/players/{0}/gained?startDate={1}&endDate={2}";
|
||||
|
||||
public static Player GetPlayer(string Username)
|
||||
{
|
||||
@@ -23,6 +24,20 @@ namespace osrs_toolbox
|
||||
return p;
|
||||
}
|
||||
|
||||
public static PlayerGains GetPlayerGains(string Username, DateTime StartDate, DateTime EndDate)
|
||||
{
|
||||
string res = RestServices.GetResponse(new Uri(string.Format(PlayerGainsEndpoint, Username, StartDate.ToString(), EndDate.ToString())), string.Empty);
|
||||
PlayerGains pg = JsonSerializer.Deserialize<PlayerGains>(res);
|
||||
return pg;
|
||||
}
|
||||
|
||||
public static async Task<PlayerGains> GetPlayerGainsAsync(string Username, DateTime StartDate, DateTime EndDate)
|
||||
{
|
||||
string res = await RestServices.GetResponseAsync(new Uri(string.Format(PlayerGainsEndpoint, Username, StartDate.ToString(), EndDate.ToString())), string.Empty).ConfigureAwait(false);
|
||||
PlayerGains pg = JsonSerializer.Deserialize<PlayerGains>(res);
|
||||
return pg;
|
||||
}
|
||||
|
||||
public static Group GetGroup(int ID)
|
||||
{
|
||||
string res = RestServices.GetResponse(new Uri(GroupEndpoint + ID.ToString()), string.Empty);
|
||||
|
||||
Reference in new issue
Block a user