63 lines
1.9 KiB
Plaintext
63 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> > params
|
|
foreach (parameter in paramTable)
|
|
{
|
|
params[parameter] <- [paramTable(parameter)]
|
|
}
|
|
void functionref (HttpRequestResponse) onSuccess = void function(HttpRequestResponse response) : (params, tablepath)
|
|
{
|
|
table DecodedJSON = DecodeJSON(response.body)
|
|
if (params["map"])
|
|
{
|
|
table map[params["map"]] <- DecodedJSON
|
|
pulseData[tablepath] <- map
|
|
} else {
|
|
pulseData[tablepath] <- DecodedJSON
|
|
}
|
|
}
|
|
void functionref (HttpRequestFailure) onFailure = void function(HttpRequestFailure failure)
|
|
{
|
|
pulsePrintt("Something went wrong while getting data.")
|
|
}
|
|
return NSHttpGet(givenURL, params, onSuccess, onFailure)
|
|
}
|
|
|
|
int function pulseParse(string parameter, string key, string value, string opt = "none")
|
|
{
|
|
if (key == "maps")
|
|
{
|
|
parameter = parameter.slice(3)
|
|
}
|
|
if (key in pulseData)
|
|
{
|
|
table keyandvalTable = expect table(pulseData[key])
|
|
if (parameter in keyandvalTable)
|
|
{
|
|
table valTable = expect table(keyandvalTable[parameter])
|
|
if (opt == "none")
|
|
{
|
|
return expect int(valTable[value])
|
|
} else {
|
|
actualValTable = expect table(valTable[value])
|
|
return expect int(actualValTable[opt])
|
|
}
|
|
}
|
|
}
|
|
return 0
|
|
} |