private void paintStroke(CanvasStroke <bool> stroke) { Dictionary <Loc, uint> brush = new Dictionary <Loc, uint>(); foreach (Loc loc in stroke.GetLocs()) { if (!Collision.InBounds(ZoneManager.Instance.CurrentGround.TexWidth, ZoneManager.Instance.CurrentGround.TexHeight, loc)) { continue; } brush[loc] = stroke.GetBrush(loc) ? 1u : 0u; } DiagManager.Instance.DevEditor.GroundEditor.Edits.Apply(new DrawBlockUndo(brush)); }
private void paintStroke(CanvasStroke <EffectTile> stroke) { Dictionary <Loc, EffectTile> brush = new Dictionary <Loc, EffectTile>(); foreach (Loc loc in stroke.GetLocs()) { if (!Collision.InBounds(ZoneManager.Instance.CurrentMap.Width, ZoneManager.Instance.CurrentMap.Height, loc)) { continue; } brush[loc] = new EffectTile(stroke.GetBrush(loc), loc); } DiagManager.Instance.DevEditor.MapEditor.Edits.Apply(new DrawTileUndo(brush)); }