void AddPreset(Player p, string[] args, LevelPreset preset) { if (preset != null) { p.Message("%WThat preset level already exists"); return; } preset = new LevelPreset(); preset.name = args[2]; ushort x = 0, y = 0, z = 0; if (!CmdNewLvl.GetDimensions(p, args, 3, ref x, ref y, ref z)) { return; } preset.x = args[3]; preset.y = args[4]; preset.z = args[5]; if (MapGen.Find(args[6]) == null) { MapGen.PrintThemes(p); return; } preset.type = args[6]; if (!CommandParser.GetInt(p, args[7], "Price", ref preset.price, 0)) { return; } Presets.Add(preset); p.Message("&aSuccessfully added the following map preset:"); p.Message("Name: &f" + preset.name); p.Message("x:" + preset.x + ", y:" + preset.y + ", z:" + preset.z); p.Message("Map Type: &f" + preset.type); p.Message("Map Price: &f" + preset.price + " &3" + Server.Config.Currency); }
void HandleGenerate(Player p, CountdownGame game, string x, string y, string z) { if (!CheckExtraPerm(p, 1)) { return; } int width, height, length; if (!int.TryParse(x, out width) || !int.TryParse(y, out height) || !int.TryParse(z, out length)) { width = 32; height = 32; length = 32; } if (width < 32 || !MapGen.OkayAxis(width)) { width = 32; } if (height < 32 || !MapGen.OkayAxis(height)) { height = 32; } if (length < 32 || !MapGen.OkayAxis(length)) { length = 32; } if (!CmdNewLvl.CheckMapVolume(p, width, height, length)) { return; } game.GenerateMap(p, width, height, length); }
protected override void HandleSet(Player p, RoundsGame game_, string[] args) { if (args.Length < 4) { Help(p); return; } if (game_.Running) { p.Message("You must stop Countdown before replacing the map."); return; } ushort x = 0, y = 0, z = 0; if (!CmdNewLvl.GetDimensions(p, args, 1, ref x, ref y, ref z)) { return; } CountdownGame game = (CountdownGame)game_; game.GenerateMap(p, x, y, z); }
void EditPreset(Player p, string[] args, LevelPreset preset) { if (preset == null) { p.Message("%WThat preset level doesn't exist"); return; } if (args[3] == "name" || args[3] == "title") { preset.name = args[4]; p.Message("&aSuccessfully changed preset name to &f" + preset.name); } else if (args[3] == "x" || args[3] == "y" || args[3] == "z") { string[] dims = new string[] { preset.x, preset.y, preset.z }; if (args[3] == "x") { dims[0] = args[4]; } if (args[3] == "y") { dims[1] = args[4]; } if (args[3] == "z") { dims[2] = args[4]; } ushort x = 0, y = 0, z = 0; if (!CmdNewLvl.GetDimensions(p, dims, 0, ref x, ref y, ref z)) { return; } preset.x = dims[0]; preset.y = dims[1]; preset.z = dims[2]; p.Message("&aSuccessfully changed preset {0} size to &f{1}", args[3], args[4]); } else if (args[3] == "type" || args[3] == "theme") { if (MapGen.Find(args[4]) == null) { MapGen.PrintThemes(p); return; } preset.type = args[4]; p.Message("&aSuccessfully changed preset type to &f" + preset.type); } else if (args[3] == "price") { int newPrice = 0; if (!CommandParser.GetInt(p, args[4], "Price", ref newPrice, 0)) { return; } preset.price = newPrice; p.Message("&aSuccessfully changed preset price to &f" + preset.price + " &3" + Server.Config.Currency); } else { p.Message("Supported properties to edit: name, title, x, y, z, type, price"); } }