Skip to content

Commit 69f05f1

Browse files
author
babelshift
committed
Added wrappers for GetPlayerBans method.
1 parent 524f901 commit 69f05f1

3 files changed

Lines changed: 49 additions & 0 deletions

File tree

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
// Generated by Xamasoft JSON Class Generator
2+
// http://www.xamasoft.com/json-class-generator
3+
4+
using Newtonsoft.Json;
5+
using System.Collections.Generic;
6+
7+
namespace SteamWebAPI2.Models
8+
{
9+
public class PlayerBans
10+
{
11+
public string SteamId { get; set; }
12+
13+
public bool CommunityBanned { get; set; }
14+
15+
public bool VACBanned { get; set; }
16+
17+
public int NumberOfVACBans { get; set; }
18+
19+
public int DaysSinceLastBan { get; set; }
20+
21+
public int NumberOfGameBans { get; set; }
22+
23+
public string EconomyBan { get; set; }
24+
}
25+
26+
public class PlayerBansContainer
27+
{
28+
[JsonProperty(PropertyName = "players")]
29+
public IList<PlayerBans> PlayerBans { get; set; }
30+
}
31+
}

SteamWebAPI2.Models/SteamWebAPI2.Models.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
<Compile Include="Achievement.cs" />
4949
<Compile Include="AchievementPercentage.cs" />
5050
<Compile Include="FriendListResultContainer.cs" />
51+
<Compile Include="PlayerBansContainer.cs" />
5152
<Compile Include="SteamAppUpToDateCheckResultContainer.cs" />
5253
<Compile Include="Cart.cs" />
5354
<Compile Include="CSGO\App.cs" />

SteamWebAPI2/SteamUser.cs

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,5 +37,22 @@ public async Task<IReadOnlyCollection<Friend>> GetFriendsListAsync(long steamId,
3737
var friendsListResult = await CallMethodAsync<FriendsListResultContainer>("GetFriendList", 1, parameters);
3838
return new ReadOnlyCollection<Friend>(friendsListResult.Result.Friends);
3939
}
40+
41+
public async Task<IReadOnlyCollection<PlayerBans>> GetPlayerBansAsync(long steamId)
42+
{
43+
return await GetPlayerBansAsync(new List<long>() { steamId });
44+
}
45+
46+
public async Task<IReadOnlyCollection<PlayerBans>> GetPlayerBansAsync(IReadOnlyCollection<long> steamIds)
47+
{
48+
List<SteamWebRequestParameter> parameters = new List<SteamWebRequestParameter>();
49+
50+
string steamIdsParamValue = String.Join(",", steamIds);
51+
52+
AddToParametersIfHasValue("steamids", steamIdsParamValue, parameters);
53+
54+
var playerBansContainer = await CallMethodAsync<PlayerBansContainer>("GetPlayerBans", 1, parameters);
55+
return new ReadOnlyCollection<PlayerBans>(playerBansContainer.PlayerBans);
56+
}
4057
}
4158
}

0 commit comments

Comments
 (0)