Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }