private void SetTile(FieldItem tile, int x, int y) { var l = Map.CurrentLayer; var pgt = (FieldItem)PG_Tile.SelectedObject; var permission = l.IsOccupied(pgt, x, y); switch (permission) { case FieldItemPermission.OutOfBounds: case FieldItemPermission.Collision when CHK_NoOverwrite.Checked: System.Media.SystemSounds.Asterisk.Play(); return; } // Clean up original placed data if (tile.IsRoot && CHK_AutoExtension.Checked) { l.DeleteExtensionTiles(tile, x, y); } // Set new placed data if (pgt.IsRoot && CHK_AutoExtension.Checked) { l.SetExtensionTiles(pgt, x, y); } tile.CopyFrom(pgt); ReloadItems(); }
private void SetTile(FieldItem tile) { var pgt = (FieldItem)PG_Tile.SelectedObject; tile.CopyFrom(pgt); ReloadGrid(Layer, X, Y); ReloadMap(); }
public void FieldItemMarshal() { var item = new FieldItem(); var bytes = item.ToBytesClass(); bytes.Length.Should().Be(Item.SIZE); var other = new FieldItem(); item.CopyFrom(other); }