Merge branch 'general-devel-rest' of github.com:TShock/TShock into general-devel-rest

This commit is contained in:
Graham Cantin 2011-09-05 06:25:03 -07:00
commit c97ff36b73

View file

@ -30,6 +30,10 @@ namespace TShockAPI {
Rest.Register(new RestCommand("/lists/players", UserList) {RequiesToken = true});
Rest.Register(new RestCommand("/world/read", WorldRead) { RequiesToken = true });
Rest.Register(new RestCommand("/world/meteor", WorldMeteor) { RequiesToken = true });
Rest.Register(new RestCommand("/world/bloodmoon/{bool}", WorldBloodmoon) { RequiesToken = true });
//RegisterExamples();
}
@ -284,6 +288,53 @@ namespace TShockAPI {
#endregion
#region RestWorldMethods
object WorldRead(RestVerbs verbs, IParameterCollection parameters)
{
var returnBlock = new Dictionary<string, string>();
returnBlock.Add("status", "200");
returnBlock.Add("name", Main.worldName);
returnBlock.Add("size", Main.maxTilesX + "*" + Main.maxTilesY);
returnBlock.Add("time", Main.time.ToString());
returnBlock.Add("daytime", Main.dayTime.ToString());
returnBlock.Add("bloodmoon", Main.bloodMoon.ToString());
returnBlock.Add("invasionsize", Main.invasionSize.ToString());
return returnBlock;
}
object WorldMeteor(RestVerbs verbs, IParameterCollection parameters)
{
WorldGen.dropMeteor();
var returnBlock = new Dictionary<string, string>();
returnBlock.Add("status", "200");
returnBlock.Add("response", "Meteor has been spawned.");
return returnBlock;
}
object WorldBloodmoon(RestVerbs verbs, IParameterCollection parameters)
{
var returnBlock = new Dictionary<string, string>();
var bloodmoonVerb = verbs["bool"];
bool bloodmoon;
if (bloodmoonVerb == null)
{
returnBlock.Add("status", "400");
returnBlock.Add("error", "No parameter was passed.");
return returnBlock;
}
if (!bool.TryParse(bloodmoonVerb, out bloodmoon))
{
returnBlock.Add("status", "400");
returnBlock.Add("error", "Unable to parse parameter.");
return returnBlock;
}
Main.bloodMoon = bloodmoon;
returnBlock.Add("status", "200");
returnBlock.Add("response", "Blood Moon has been set to " + bloodmoon.ToString());
return returnBlock;
}
#endregion
#region RestExampleMethods
public void RegisterExamples()