Skip to content

Commit 23597fb

Browse files
committed
Merge branch 'develop' into 'master'
v1.1 See merge request flopana/goverwatch!4
2 parents d524abc + 35adacf commit 23597fb

File tree

1 file changed

+33
-5
lines changed

1 file changed

+33
-5
lines changed

main.go

Lines changed: 33 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package main
22

33
import (
4-
"bufio"
54
"fmt"
65
"github.com/antchfx/jsonquery"
76
"github.com/google/gopacket"
@@ -21,6 +20,7 @@ import (
2120
var owStartRound int
2221
var owStartRoundSet bool
2322
const WarningColor = "\033[1;33m%s\033[0m"
23+
const ErrorColor = "\033[1;31m%s\033[0m"
2424

2525
var (
2626
snapshot_len int32 = 1024
@@ -123,13 +123,27 @@ func main() {
123123
fmt.Printf("Current Round: %d\n\n", p.GameState().TotalRoundsPlayed()+1)
124124
for _, player := range allplayers {
125125
var profileurl string
126+
var vacStatus string
127+
var gameBans int
128+
var daysSinceLastBan string
126129
if player.SteamID64 != 0 && steamWebApiKey != ""{
127130
//https://steamapi.xpaw.me/#ISteamUser/GetPlayerSummaries
128131
doc, _ := jsonquery.LoadURL("https://api.steampowered.com/ISteamUser/GetPlayerSummaries/v2/?key=" + steamWebApiKey + "&steamids=" + strconv.FormatUint(player.SteamID64, 10))
129-
//TODO: Implement ban status
130132
for _, n := range jsonquery.Find(doc, "response/players/*/profileurl") {
131133
profileurl = n.InnerText()
132134
}
135+
doc, _ = jsonquery.LoadURL("https://api.steampowered.com/ISteamUser/GetPlayerBans/v1/?key=" + steamWebApiKey + "&steamids=" + strconv.FormatUint(player.SteamID64, 10))
136+
for _, n := range jsonquery.Find(doc, "players/*/VACBanned") {
137+
vacStatus = n.InnerText()
138+
}
139+
for _, n := range jsonquery.Find(doc, "players/*/NumberOfVACBans") {
140+
gameBans, _= strconv.Atoi(n.InnerText())
141+
}
142+
if vacStatus == "true" || gameBans > 0{
143+
for _, n := range jsonquery.Find(doc, "players/*/DaysSinceLastBan") {
144+
daysSinceLastBan = n.InnerText()
145+
}
146+
}
133147
}
134148
var team string
135149
if player.Team == 2 {
@@ -144,12 +158,25 @@ func main() {
144158
}else {
145159
botName = ""
146160
}
161+
162+
var banPrint string
163+
if vacStatus == "true" {
164+
banPrint = "VAC "
165+
}
166+
if gameBans > 0{
167+
banPrint += "GameBans: " + strconv.Itoa(gameBans)
168+
}
169+
147170
fmt.Printf("Team: %s ,Player: %s, SteamID64: %d, Profile: %s\n", team, botName+player.Name, player.SteamID64, profileurl)
171+
if banPrint != "" {
172+
fmt.Printf(ErrorColor, banPrint + " Days since last ban: " + daysSinceLastBan + "\n")
173+
}
148174
fmt.Printf("K: %d, A: %d, D: %d\n\n", player.Kills(), player.Assists(), player.Deaths())
149175
}
150-
fmt.Print("Advance to next round? [Press ENTER]")
151-
reader := bufio.NewReader(os.Stdin)
152-
_, _ = reader.ReadString('\n')
176+
fmt.Print("Advance to next round? [Press ENTER]")
177+
fmt.Scanln()
178+
//reader := bufio.NewReader(os.Stdin)
179+
//_, _ = reader.ReadString('\n')
153180
}
154181
})
155182
p.RegisterEventHandler(func(e events.MatchStart) {
@@ -158,6 +185,7 @@ func main() {
158185

159186
fmt.Println("In which round did your Overwatch case start?")
160187
_, _ = fmt.Scanf("%d", &owStartRound)
188+
fmt.Scanln()
161189
owStartRoundSet = true
162190
})
163191

0 commit comments

Comments
 (0)