diff --git a/TShockAPI/RestManager.cs b/TShockAPI/RestManager.cs index c6521072..9693311e 100644 --- a/TShockAPI/RestManager.cs +++ b/TShockAPI/RestManager.cs @@ -27,6 +27,8 @@ 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(); } @@ -170,6 +172,38 @@ namespace TShockAPI { return returnBlock; } + object WorldMeteor(RestVerbs verbs, IParameterCollection parameters) + { + WorldGen.dropMeteor(); + var returnBlock = new Dictionary(); + returnBlock.Add("status", "200"); + returnBlock.Add("response", "Meteor has been spawned."); + return returnBlock; + } + + object WorldBloodmoon(RestVerbs verbs, IParameterCollection parameters) + { + var returnBlock = new Dictionary(); + 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