public void destroy(Location baseLoc, Direction front, PlaceSide side) { HalfDividedVoxel v = World.world[baseLoc] as HalfDividedVoxel; if (v != null) { v.owner.remove(side); } }
public Structure create(Location baseLoc, Direction front, PlaceSide side) { ContributionReference reffer = new ContributionReference(this, currentColor, currentHighlight, front, side); HalfDividedVoxel v = World.world[baseLoc] as HalfDividedVoxel; if (v == null) { return(new HVStructure(reffer, baseLoc)); } else { if (!v.owner.add(reffer)) { MainWindow.showError("Not enough space or no fit"); } //! MainWindow.showError("設置スペースが無いか、一致しません"); return(v.owner); } }
public static bool canBeBuilt(Location baseLoc) { Voxel v = World.world[baseLoc]; if (v != null) { HalfDividedVoxel hv = v as HalfDividedVoxel; if (hv != null) { return(hv.hasSpace); } else { return(false); } } else { return(true); } }