Attempted to add Vacuum Cube.

This commit is contained in:
sigonasr2 2016-12-04 19:22:18 -06:00
parent 22816a8022
commit e100ccaadc
9 changed files with 132 additions and 23 deletions

Binary file not shown.

View File

@ -361,6 +361,16 @@ public enum RecipeLinker {
Recipes.getArrowFromMeta("PIERCING_ARR"), Recipes.getArrowFromMeta("PIERCING_ARR"),
new ItemStack(Material.REDSTONE,1),new ItemStack(Material.REDSTONE,1),new ItemStack(Material.REDSTONE,1), new ItemStack(Material.REDSTONE,1),new ItemStack(Material.REDSTONE,1),new ItemStack(Material.REDSTONE,1),
new ItemStack(Material.REDSTONE,1),Recipes.getArrowFromMeta("DOUBLE_DAMAGE_ARR"), new ItemStack(Material.REDSTONE,1),Recipes.getArrowFromMeta("DOUBLE_DAMAGE_ARR"),
}),
worldshop(RecipeCategory.MISC_ITEMS,ChatColor.BLUE,"World Shop",new ItemStack[]{
CustomItem.WorldShop(),
new ItemStack(Material.CHEST,1),new ItemStack(Material.SIGN,1),null,
CustomItem.DirtSubstitute(),
}),
worldshop2(RecipeCategory.MISC_ITEMS,ChatColor.BLUE,"World Shop [Trapped Chest]",new ItemStack[]{
CustomItem.WorldShop2(),
new ItemStack(Material.TRAPPED_CHEST,1),new ItemStack(Material.SIGN,1),null,
CustomItem.DirtSubstitute(),
}); });
String name = ""; String name = "";

View File

@ -1,5 +1,5 @@
package sig.plugin.TwosideKeeper.HelperStructures; package sig.plugin.TwosideKeeper.HelperStructures;
public enum CubeType { public enum CubeType {
NORMAL,LARGE,ENDER NORMAL,LARGE,ENDER,VACUUM
} }

View File

@ -25,6 +25,7 @@ import sig.plugin.TwosideKeeper.Recipes;
import sig.plugin.TwosideKeeper.TwosideKeeper; import sig.plugin.TwosideKeeper.TwosideKeeper;
import sig.plugin.TwosideKeeper.HelperStructures.Common.ArrowQuiver; import sig.plugin.TwosideKeeper.HelperStructures.Common.ArrowQuiver;
import sig.plugin.TwosideKeeper.HelperStructures.Common.GenericFunctions; import sig.plugin.TwosideKeeper.HelperStructures.Common.GenericFunctions;
import sig.plugin.TwosideKeeper.HelperStructures.Utils.ItemUtils;
public class CustomItem { public class CustomItem {
ItemStack item; ItemStack item;
@ -48,6 +49,7 @@ public class CustomItem {
TwosideKeeper.LARGE_ITEM_CUBE_RECIPE = LargeItemCubeRecipe(); TwosideKeeper.LARGE_ITEM_CUBE_RECIPE = LargeItemCubeRecipe();
TwosideKeeper.ENDER_ITEM_CUBE_RECIPE = EnderItemCubeRecipe(); TwosideKeeper.ENDER_ITEM_CUBE_RECIPE = EnderItemCubeRecipe();
TwosideKeeper.DUPLICATE_ENDER_ITEM_CUBE_RECIPE = DuplicateEnderItemCubeRecipe(); TwosideKeeper.DUPLICATE_ENDER_ITEM_CUBE_RECIPE = DuplicateEnderItemCubeRecipe();
TwosideKeeper.VACUUM_CUBE_RECIPE = VacuumCubeRecipe();
TwosideKeeper.ARROW_QUIVER_RECIPE = ArrowQuiverRecipe(); TwosideKeeper.ARROW_QUIVER_RECIPE = ArrowQuiverRecipe();
TwosideKeeper.HARDENED_IRON_HELMET_RECIPE = HardenedRecipe(Material.IRON_HELMET,Material.IRON_BLOCK,"aaa","axa","xxx"); TwosideKeeper.HARDENED_IRON_HELMET_RECIPE = HardenedRecipe(Material.IRON_HELMET,Material.IRON_BLOCK,"aaa","axa","xxx");
TwosideKeeper.HARDENED_IRON_CHESTPLATE_RECIPE = HardenedRecipe(Material.IRON_CHESTPLATE,Material.IRON_BLOCK,"axa","aaa","aaa"); TwosideKeeper.HARDENED_IRON_CHESTPLATE_RECIPE = HardenedRecipe(Material.IRON_CHESTPLATE,Material.IRON_BLOCK,"axa","aaa","aaa");
@ -112,19 +114,64 @@ public class CustomItem {
TwosideKeeper.POISON_ARROW_RECIPE = PoisonArrowRecipe(); TwosideKeeper.POISON_ARROW_RECIPE = PoisonArrowRecipe();
TwosideKeeper.PIERCING_ARROW_RECIPE = PiercingArrowRecipe(); TwosideKeeper.PIERCING_ARROW_RECIPE = PiercingArrowRecipe();
TwosideKeeper.WORLD_SHOP_RECIPE = WorldShopRecipe(); TwosideKeeper.WORLD_SHOP_RECIPE = WorldShopRecipe();
TwosideKeeper.WORLD_SHOP2_RECIPE = WorldShop2Recipe();
} }
private static ShapelessRecipe WorldShopRecipe() { private static ItemStack VacuumCube() {
ItemStack item_ItemCube = WorldShop(); ItemStack item_VacuumCube = new ItemStack(Material.ENDER_CHEST);
List<String> item_VacuumCube_lore = new ArrayList<String>();
item_VacuumCube_lore.add("A storage container that sucks");
item_VacuumCube_lore.add("up blocks. Holds 54 block stacks.");
item_VacuumCube_lore.add(" ");
ItemMeta item_ItemCube_meta=item_VacuumCube.getItemMeta();
item_ItemCube_meta.setLore(item_VacuumCube_lore);
item_ItemCube_meta.setDisplayName(ChatColor.BLUE+""+ChatColor.BOLD+"Vacuum Cube");
item_VacuumCube.setItemMeta(item_ItemCube_meta);
return item_VacuumCube.clone();
}
ShapedRecipe ItemCube = new ShapedRecipe(item_ItemCube); private static ShapelessRecipe VacuumCubeRecipe() {
ItemCube.shape("ppp","pcp","ppp"); ItemStack item_VacuumCube = VacuumCube();
ItemCube.setIngredient('p', Material.WOOD, -1);
ItemCube.setIngredient('c', Material.CHEST); ShapelessRecipe ItemCube = new ShapelessRecipe(item_VacuumCube);
ItemCube.addIngredient(Material.ENDER_CHEST);
ItemCube.addIngredient(Material.ENDER_PEARL);
ItemCube.addIngredient(Material.ENDER_PEARL);
ItemCube.addIngredient(Material.ELYTRA);
ItemCube.addIngredient(4,Material.DIAMOND_BLOCK);
ItemCube.addIngredient(Material.REDSTONE_BLOCK);
return ItemCube; return ItemCube;
} }
private static ItemStack WorldShop() { private static ShapelessRecipe WorldShopRecipe() {
ItemStack item_worldShop = WorldShop();
ShapelessRecipe recipe_Worldshop = new ShapelessRecipe(item_worldShop);
recipe_Worldshop.addIngredient(Material.CHEST);
recipe_Worldshop.addIngredient(Material.SIGN);
recipe_Worldshop.addIngredient(Material.DIRT);
return recipe_Worldshop;
}
private static ShapelessRecipe WorldShop2Recipe() {
ItemStack item_worldShop = WorldShop2();
ShapelessRecipe recipe_Worldshop = new ShapelessRecipe(item_worldShop);
recipe_Worldshop.addIngredient(Material.TRAPPED_CHEST);
recipe_Worldshop.addIngredient(Material.SIGN);
recipe_Worldshop.addIngredient(Material.DIRT);
return recipe_Worldshop;
}
public static ItemStack DirtSubstitute() {
ItemStack dirtSub = new ItemStack(Material.DIRT);
ItemUtils.addLore(dirtSub, "You can substitute the dirt block");
ItemUtils.addLore(dirtSub, "with any block to create any type");
ItemUtils.addLore(dirtSub, "of World Shop!");
return dirtSub;
}
public static ItemStack WorldShop() {
ItemStack worldShop = new ItemStack(Material.CHEST); ItemStack worldShop = new ItemStack(Material.CHEST);
List<String> worldShopLore = new ArrayList<String>(); List<String> worldShopLore = new ArrayList<String>();
worldShopLore.add("You can substitute the dirt block"); worldShopLore.add("You can substitute the dirt block");
@ -132,7 +179,20 @@ public class CustomItem {
worldShopLore.add("of World Shop!"); worldShopLore.add("of World Shop!");
ItemMeta item_ItemCube_meta=worldShop.getItemMeta(); ItemMeta item_ItemCube_meta=worldShop.getItemMeta();
item_ItemCube_meta.setLore(worldShopLore); item_ItemCube_meta.setLore(worldShopLore);
item_ItemCube_meta.setDisplayName("Item Cube"); item_ItemCube_meta.setDisplayName("Placeable World Shop");
worldShop.setItemMeta(item_ItemCube_meta);
return worldShop.clone();
}
public static ItemStack WorldShop2() {
ItemStack worldShop = new ItemStack(Material.TRAPPED_CHEST);
List<String> worldShopLore = new ArrayList<String>();
worldShopLore.add("You can substitute the dirt block");
worldShopLore.add("with any block to create any type");
worldShopLore.add("of World Shop!");
ItemMeta item_ItemCube_meta=worldShop.getItemMeta();
item_ItemCube_meta.setLore(worldShopLore);
item_ItemCube_meta.setDisplayName("Placeable World Shop");
worldShop.setItemMeta(item_ItemCube_meta); worldShop.setItemMeta(item_ItemCube_meta);
return worldShop.clone(); return worldShop.clone();
} }
@ -496,4 +556,11 @@ public class CustomItem {
return item_ItemCube.clone(); return item_ItemCube.clone();
} }
public static boolean isVacuumCube(ItemStack item) {
if (ItemUtils.isValidLoreItem(item) && ItemUtils.LoreContains(item, "A storage container that sucks")) {
return true;
}
return false;
}
} }

View File

@ -87,9 +87,9 @@ public enum CustomRecipe {
ItemStack newitem = null; ItemStack newitem = null;
ItemStack netherstar = null; ItemStack netherstar = null;
for (int i=1;i<10;i++) { for (int i=1;i<10;i++) {
if (ev.getInventory().getItem(i)!=null && if ((ev.getInventory().getItem(i)!=null &&
ev.getInventory().getItem(i).getType()!=Material.AIR && ev.getInventory().getItem(i).getType()!=Material.AIR &&
(ev.getInventory().getItem(i).getType()==Material.ENDER_CHEST)) { (ev.getInventory().getItem(i).getType()==Material.ENDER_CHEST)) && !CustomItem.isVacuumCube(ev.getInventory().getItem(i))) {
ItemMeta inventory_itemMeta1=ev.getInventory().getItem(i).getItemMeta(); ItemMeta inventory_itemMeta1=ev.getInventory().getItem(i).getItemMeta();
if (inventory_itemMeta1.hasLore() && inventory_itemMeta1.getLore().size()==4) { if (inventory_itemMeta1.hasLore() && inventory_itemMeta1.getLore().size()==4) {
String loreitem = inventory_itemMeta1.getLore().get(3); String loreitem = inventory_itemMeta1.getLore().get(3);

View File

@ -1213,6 +1213,10 @@ public class WorldShop {
r.setSeed(seed); r.setSeed(seed);
Set<String> items = WorldShop.pricelist.keySet(); Set<String> items = WorldShop.pricelist.keySet();
int rand = r.nextInt(items.size()); int rand = r.nextInt(items.size());
if (iter>50) { //A fail-safe so we don't end up in an endless loop.
TwosideKeeper.log("Could not define a specific deal of the day! Please check the ShopPrices.data file for valid prices!", 1);
return new ItemStack(Material.DIRT);
}
for (String s : items) { for (String s : items) {
if (rand>0) { if (rand>0) {
rand--; rand--;

View File

@ -14,7 +14,7 @@ public class ItemCubeWindow {
public static void addItemCubeWindow(Player p, int id) { public static void addItemCubeWindow(Player p, int id) {
PlayerStructure pd = PlayerStructure.GetPlayerStructure(p); PlayerStructure pd = PlayerStructure.GetPlayerStructure(p);
pd.itemcubelist.add(id); pd.itemcubelist.add(id);
TwosideKeeper.log("Added cube "+id+" to Item Cube List for Player "+p.getName()+". New list: "+pd.itemcubelist.toString(), 3); TwosideKeeper.log("Added cube "+id+" to Item Cube List for Player "+p.getName()+". New list: "+pd.itemcubelist.toString(),0);
} }
public static void popItemCubeWindow(Player p) { public static void popItemCubeWindow(Player p) {
//Opens the next possible item cube inventory from the list of inventories. //Opens the next possible item cube inventory from the list of inventories.
@ -22,7 +22,7 @@ public class ItemCubeWindow {
if (pd.itemcubelist.size()>0 && !pd.opened_another_cube) { if (pd.itemcubelist.size()>0 && !pd.opened_another_cube) {
int index = pd.itemcubelist.size()-1; int index = pd.itemcubelist.size()-1;
Integer itemcubeid = pd.itemcubelist.get(index); Integer itemcubeid = pd.itemcubelist.get(index);
TwosideKeeper.log("Popping Item Cube ID "+index+" from "+p.getName()+"'s list.", 3); TwosideKeeper.log("Popping Item Cube ID "+index+" from "+p.getName()+"'s list.", 0);
pd.itemcubelist.remove(index); pd.itemcubelist.remove(index);
Bukkit.getScheduler().scheduleSyncDelayedTask(TwosideKeeper.plugin, new Runnable() { Bukkit.getScheduler().scheduleSyncDelayedTask(TwosideKeeper.plugin, new Runnable() {
@ -31,6 +31,9 @@ public class ItemCubeWindow {
//pd.itemcubeviews.add(p.getOpenInventory()); //pd.itemcubeviews.add(p.getOpenInventory());
CubeType size = TwosideKeeper.itemCube_getCubeType(itemcubeid); CubeType size = TwosideKeeper.itemCube_getCubeType(itemcubeid);
int inv_size = 9; int inv_size = 9;
if (size==CubeType.VACUUM) {
inv_size=54;
} else
if (size!=CubeType.NORMAL) { if (size!=CubeType.NORMAL) {
inv_size=27; inv_size=27;
} }

View File

@ -33,6 +33,8 @@ public class Recipes {
//------------------------------ //------------------------------
Bukkit.addRecipe(TwosideKeeper.DUPLICATE_ENDER_ITEM_CUBE_RECIPE); Bukkit.addRecipe(TwosideKeeper.DUPLICATE_ENDER_ITEM_CUBE_RECIPE);
Bukkit.addRecipe(TwosideKeeper.VACUUM_CUBE_RECIPE);
} }
public static void Initialize_ArrowQuiver_Recipe() { public static void Initialize_ArrowQuiver_Recipe() {
Bukkit.addRecipe(TwosideKeeper.ARROW_QUIVER_RECIPE); Bukkit.addRecipe(TwosideKeeper.ARROW_QUIVER_RECIPE);

View File

@ -252,6 +252,7 @@ public class TwosideKeeper extends JavaPlugin implements Listener {
public static CustomItem LARGE_ITEM_CUBE; public static CustomItem LARGE_ITEM_CUBE;
public static CustomItem ENDER_ITEM_CUBE; public static CustomItem ENDER_ITEM_CUBE;
public static CustomItem DUPLICATE_ENDER_ITEM_CUBE; public static CustomItem DUPLICATE_ENDER_ITEM_CUBE;
public static CustomItem VACUUM_CUBE;
public static CustomItem ARROW_QUIVER; public static CustomItem ARROW_QUIVER;
public static CustomItem HARDENED_IRON_HELMET; public static CustomItem HARDENED_IRON_HELMET;
public static CustomItem HARDENED_IRON_CHESTPLATE; public static CustomItem HARDENED_IRON_CHESTPLATE;
@ -295,6 +296,7 @@ public class TwosideKeeper extends JavaPlugin implements Listener {
public static ShapedRecipe LARGE_ITEM_CUBE_RECIPE; public static ShapedRecipe LARGE_ITEM_CUBE_RECIPE;
public static ShapedRecipe ENDER_ITEM_CUBE_RECIPE; public static ShapedRecipe ENDER_ITEM_CUBE_RECIPE;
public static ShapelessRecipe DUPLICATE_ENDER_ITEM_CUBE_RECIPE; public static ShapelessRecipe DUPLICATE_ENDER_ITEM_CUBE_RECIPE;
public static ShapelessRecipe VACUUM_CUBE_RECIPE;
public static ShapedRecipe ARROW_QUIVER_RECIPE; public static ShapedRecipe ARROW_QUIVER_RECIPE;
public static ShapedRecipe HARDENED_IRON_HELMET_RECIPE; public static ShapedRecipe HARDENED_IRON_HELMET_RECIPE;
public static ShapedRecipe HARDENED_IRON_CHESTPLATE_RECIPE; public static ShapedRecipe HARDENED_IRON_CHESTPLATE_RECIPE;
@ -346,6 +348,7 @@ public class TwosideKeeper extends JavaPlugin implements Listener {
public static ShapelessRecipe EXPLODING_ARROW_RECIPE; public static ShapelessRecipe EXPLODING_ARROW_RECIPE;
public static ShapelessRecipe PIERCING_ARROW_RECIPE; public static ShapelessRecipe PIERCING_ARROW_RECIPE;
public static ShapelessRecipe WORLD_SHOP_RECIPE; public static ShapelessRecipe WORLD_SHOP_RECIPE;
public static ShapelessRecipe WORLD_SHOP2_RECIPE;
public static CustomPotion STRENGTHENING_VIAL; public static CustomPotion STRENGTHENING_VIAL;
public static CustomPotion LIFE_VIAL; public static CustomPotion LIFE_VIAL;
public static CustomPotion HARDENING_VIAL; public static CustomPotion HARDENING_VIAL;
@ -2429,6 +2432,9 @@ public class TwosideKeeper extends JavaPlugin implements Listener {
int size=0; int size=0;
if (ev.getPlayer().getInventory().getItemInMainHand().getType()==Material.CHEST) { if (ev.getPlayer().getInventory().getItemInMainHand().getType()==Material.CHEST) {
size=9; size=9;
} else
if (CustomItem.isVacuumCube(ev.getPlayer().getInventory().getItemInMainHand())) {
size=54;
} else { } else {
size=27; size=27;
} }
@ -2463,6 +2469,9 @@ public class TwosideKeeper extends JavaPlugin implements Listener {
int size=0; int size=0;
if (ev.getPlayer().getInventory().getItemInMainHand().getType()==Material.CHEST) { if (ev.getPlayer().getInventory().getItemInMainHand().getType()==Material.CHEST) {
size=9; size=9;
} else
if (CustomItem.isVacuumCube(ev.getPlayer().getInventory().getItemInMainHand())) {
size=54;
} else { } else {
size=27; size=27;
} }
@ -3201,7 +3210,7 @@ public class TwosideKeeper extends JavaPlugin implements Listener {
if (ev.getCurrentItem().hasItemMeta()) { if (ev.getCurrentItem().hasItemMeta()) {
ItemMeta item_meta = ev.getCurrentItem().getItemMeta(); ItemMeta item_meta = ev.getCurrentItem().getItemMeta();
if (item_meta.getDisplayName()!=null && if (item_meta.getDisplayName()!=null &&
item_meta.getDisplayName().contains("Item Cube")) { (item_meta.getDisplayName().contains("Item Cube") || item_meta.getDisplayName().contains("Vacuum Cube"))) {
if (ev.isShiftClick()) { if (ev.isShiftClick()) {
ev.setCancelled(true); ev.setCancelled(true);
} else { } else {
@ -3216,6 +3225,9 @@ public class TwosideKeeper extends JavaPlugin implements Listener {
ev.getCurrentItem().setAmount(2); ev.getCurrentItem().setAmount(2);
} }
CubeType cubetype; CubeType cubetype;
if (ev.getCurrentItem().getItemMeta().getDisplayName().contains("Vacuum Cube")) {
cubetype=CubeType.VACUUM;
} else
if (ev.getCurrentItem().getItemMeta().getDisplayName().contains("Ender Item Cube")) { if (ev.getCurrentItem().getItemMeta().getDisplayName().contains("Ender Item Cube")) {
cubetype=CubeType.ENDER; cubetype=CubeType.ENDER;
} else if (ev.getCurrentItem().getItemMeta().getDisplayName().contains("Large Item Cube")) { } else if (ev.getCurrentItem().getItemMeta().getDisplayName().contains("Large Item Cube")) {
@ -3927,6 +3939,9 @@ public class TwosideKeeper extends JavaPlugin implements Listener {
if (ev.getCurrentItem().getType()==Material.CHEST) { if (ev.getCurrentItem().getType()==Material.CHEST) {
clicked_size=9; clicked_size=9;
cubetype=CubeType.NORMAL; cubetype=CubeType.NORMAL;
} else {
if (CustomItem.isVacuumCube(ev.getCurrentItem())) {
clicked_size=54;
} else { } else {
clicked_size=27; clicked_size=27;
if (ev.getCurrentItem().getType()==Material.STORAGE_MINECART) { if (ev.getCurrentItem().getType()==Material.STORAGE_MINECART) {
@ -3935,6 +3950,7 @@ public class TwosideKeeper extends JavaPlugin implements Listener {
cubetype=CubeType.ENDER; cubetype=CubeType.ENDER;
} }
} }
}
//See if we're looking at an Item Cube inventory already. //See if we're looking at an Item Cube inventory already.
if (((PlayerStructure)playerdata.get(ev.getWhoClicked().getUniqueId())).isViewingItemCube && ev.getInventory().getTitle().contains("Item Cube")) { if (((PlayerStructure)playerdata.get(ev.getWhoClicked().getUniqueId())).isViewingItemCube && ev.getInventory().getTitle().contains("Item Cube")) {
@ -4074,9 +4090,13 @@ public class TwosideKeeper extends JavaPlugin implements Listener {
int inventory_size; int inventory_size;
if (ev.getCurrentItem().getType()==Material.CHEST) { if (ev.getCurrentItem().getType()==Material.CHEST) {
inventory_size=9; inventory_size=9;
} else {
if (CustomItem.isVacuumCube(ev.getCurrentItem())) {
inventory_size=54;
} else { } else {
inventory_size=27; inventory_size=27;
} }
}
final PlayerStructure pd2 = pd; final PlayerStructure pd2 = pd;
if (!ItemCube.isSomeoneViewingItemCube(idnumb,p)) { if (!ItemCube.isSomeoneViewingItemCube(idnumb,p)) {
log("Attempting to open",5); log("Attempting to open",5);
@ -6745,11 +6765,12 @@ public class TwosideKeeper extends JavaPlugin implements Listener {
config = new File(TwosideKeeper.filesave,"itemcubes/ItemCube"+id+".data"); config = new File(TwosideKeeper.filesave,"itemcubes/ItemCube"+id+".data");
FileConfiguration workable = YamlConfiguration.loadConfiguration(config); FileConfiguration workable = YamlConfiguration.loadConfiguration(config);
for (int i=0;i<27;i++) { for (int i=0;i<54;i++) {
ItemCube_items.add(workable.getItemStack("item"+i, new ItemStack(Material.AIR))); ItemCube_items.add(workable.getItemStack("item"+i, new ItemStack(Material.AIR)));
} }
return ItemCube_items; return ItemCube_items;
} }
public static CubeType itemCube_getCubeType(int id){ public static CubeType itemCube_getCubeType(int id){
File config; File config;
config = new File(TwosideKeeper.filesave,"itemcubes/ItemCube"+id+".data"); config = new File(TwosideKeeper.filesave,"itemcubes/ItemCube"+id+".data");
@ -6759,6 +6780,7 @@ public class TwosideKeeper extends JavaPlugin implements Listener {
case 0:{return CubeType.NORMAL;} case 0:{return CubeType.NORMAL;}
case 1:{return CubeType.LARGE;} case 1:{return CubeType.LARGE;}
case 2:{return CubeType.ENDER;} case 2:{return CubeType.ENDER;}
case 3:{return CubeType.VACUUM;}
default:{return CubeType.NORMAL;} default:{return CubeType.NORMAL;}
} }
} }
@ -6792,6 +6814,7 @@ public class TwosideKeeper extends JavaPlugin implements Listener {
case NORMAL:{workable.set("cubetype", 0);}break; case NORMAL:{workable.set("cubetype", 0);}break;
case LARGE:{workable.set("cubetype", 1);}break; case LARGE:{workable.set("cubetype", 1);}break;
case ENDER:{workable.set("cubetype", 2);}break; case ENDER:{workable.set("cubetype", 2);}break;
case VACUUM:{workable.set("cubetype", 3);}break;
} }
try { try {
workable.save(config); workable.save(config);