56 lines
1.9 KiB
Plaintext
56 lines
1.9 KiB
Plaintext
globalize_all_functions
|
|
|
|
|
|
|
|
global string pulsePrefix
|
|
void function pulsePrefixSet() //Sets our prefix
|
|
{
|
|
pulsePrefix = format("\x1b[38;2;%i;%i;%im[PULSE]\x1b[0m", 255, 178, 102)
|
|
}
|
|
|
|
void function pulsePrintt(string content) //Prints whatever we want printed with given prefix (by standard [PULSE]).
|
|
{
|
|
printt(format("%s " + content, pulsePrefix))
|
|
}
|
|
|
|
bool function pulseRequestData(string givenURL, table parameterTable, string tablepath) //Gets data from API (see ToneURL within mod.json) and puts it into one table for processing.
|
|
{
|
|
table<string, array<string> > requestTable
|
|
void functionref (HttpRequestResponse) onSuccess = void function(HttpRequestResponse response) : (parameterTable, requestTable, tablepath)
|
|
{
|
|
table DecodedJSON = DecodeJSON(response.body)
|
|
if ("map" in parameterTable)
|
|
{
|
|
string mapName = expect string(parameterTable["map"])
|
|
pulseData["mp_" + mapName] <- DecodedJSON
|
|
} else {
|
|
pulseData[tablepath] <- DecodedJSON
|
|
}
|
|
}
|
|
void functionref (HttpRequestFailure) onFailure = void function(HttpRequestFailure failure)
|
|
{
|
|
pulsePrintt("Something went wrong while getting data.")
|
|
}
|
|
foreach (key, value in parameterTable)
|
|
{
|
|
requestTable[string(key)] <- [expect string(parameterTable[string(key)])]
|
|
}
|
|
return NSHttpGet(givenURL, requestTable, onSuccess, onFailure)
|
|
}
|
|
|
|
int function pulseParse(...) //Returns data from our pulseData table.
|
|
{
|
|
table parser = pulseData
|
|
int result = 0
|
|
for (int i; i < vargc; i++) {
|
|
print (vargc)
|
|
if (i < expect int(vargc) - 1) {
|
|
if (expect string (vargv[i]) in parser) {
|
|
parser = expect table(parser[expect string(vargv[i])])
|
|
} else {break}
|
|
} else {
|
|
result = expect int(parser[expect string(vargv[i])])
|
|
}
|
|
}
|
|
return result
|
|
} |