private void onMouseUp(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Left) { Rectangle region = selection.Region; Rectangle tileRegion = TileEditorState.Instance.SelectedRegion; RectangleAction action = new RectangleAction(tileRegion, region, TileEditorState.Instance.SelectedTileset); EditorEngine.Instance.GetActionManager().Execute(action); foreach (SetTileAction a in action.Actions) { Map map = EditorEngine.Instance.CurrentMap; MockupTileBehavior b = map.GetBehavior(a.X, a.Y); b.BehaviorId = map.Tilesets[a.TilesetIndex].Tileset.Tiles[a.TileIndex].DefaultBehavior.BehaviorId; } active = false; } }
/// <summary> /// 绘制矩形动作 /// </summary> public RectangleAction RectangleAction(Color?penColor = null, int lineWidth = 1, Color?fill = null, dynamic Element = null) { if (penColor == null) { penColor = Colors.Black; } var a = new RectangleAction(); a.Geometry.PenColor = penColor.Value; a.Geometry.LineWidth = lineWidth; a.Geometry.Element = Element; if (fill != null) { a.Geometry.FillColor = fill.Value; } DrawingControl.SetAction(a); LastAction = a; return(a); }
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); }
private void SetAction(RectangleAction a) { tip = new SubRectangleTip(DrawingControl, textTip); tip.Attention(a); }