public void Enter(IFiniteStateMachine stateMachine, IState oldState) { EditorForm.b_entityremove.Checked = true; MultipleRemoveEntityAction removeAction = new MultipleRemoveEntityAction(); foreach (MapEntity worldEntity in EntitySelectionTool.Instance.SelectedEntities) { RemoveEntityAction action = new RemoveEntityAction(EditorEngine.Instance.CurrentMap.Entities.IndexOf(worldEntity)); action.Execute(); removeAction.Actions.Add(action); } EditorEngine.Instance.GetActionManager().Push(removeAction); EntitySelectionTool.Instance.SelectedEntities.Clear(); stateMachine.ChangeState(oldState); }
public IAction Read() { IAction result = null; BinaryInput stream = _stream as BinaryInput; int i = stream.ReadInt32(); if (i == 1) { result = new SetTileAction(); } if (i == 2) { result = new MultiAction(); } if (i == 3) { result = new FillAction(); } if (i == 4) { result = new RectangleAction(); } if (i == 5) { result = new AddEntityAction(); } if (i == 6) { result = new RemoveEntityAction(); } IEncodable encodable = result as IEncodable; if (encodable != null) { encodable.Decode(stream); } return(result); }