public void RenderList(IMapleList list, SpriteBatch sprite, int xShift, int yShift) { if (list.ListType == ItemTypes.None) { foreach (BoardItem item in list) { if (parent.IsItemInRange(item.X, item.Y, item.Width, item.Height, xShift - item.Origin.X, yShift - item.Origin.Y) && ((ApplicationSettings.visibleTypes & item.Type) == item.Type)) { item.Draw(sprite, item.GetColor(ApplicationSettings.editedTypes, selectedLayerIndex, item.Selected), xShift, yShift); } } } else if ((ApplicationSettings.visibleTypes & list.ListType) == list.ListType) { if (list.Selectable) { foreach (BoardItem item in list) { if (parent.IsItemInRange(item.X, item.Y, item.Width, item.Height, xShift - item.Origin.X, yShift - item.Origin.Y)) { item.Draw(sprite, item.GetColor(ApplicationSettings.editedTypes, selectedLayerIndex, item.Selected), xShift, yShift); } } } else { foreach (MapleLine line in list) { line.Draw(sprite, line.GetColor(ApplicationSettings.editedTypes, selectedLayerIndex), xShift, yShift); } } } }
public void RenderList(IMapleList list, SpriteBatch sprite, int xShift, int yShift, SelectionInfo sel) { if (list.ListType == ItemTypes.None) { foreach (BoardItem item in list) { if (parent.IsItemInRange(item.X, item.Y, item.Width, item.Height, xShift - item.Origin.X, yShift - item.Origin.Y) && ((sel.visibleTypes & item.Type) != 0)) { item.Draw(sprite, item.GetColor(sel, item.Selected), xShift, yShift); } } } else if ((sel.visibleTypes & list.ListType) != 0) { if (list.IsItem) { foreach (BoardItem item in list) { if (parent.IsItemInRange(item.X, item.Y, item.Width, item.Height, xShift - item.Origin.X, yShift - item.Origin.Y)) { item.Draw(sprite, item.GetColor(sel, item.Selected), xShift, yShift); } } } else { foreach (MapleLine line in list) { if (parent.IsItemInRange(Math.Min(line.FirstDot.X, line.SecondDot.X), Math.Min(line.FirstDot.Y, line.SecondDot.Y), Math.Abs(line.FirstDot.X - line.SecondDot.X), Math.Abs(line.FirstDot.Y - line.SecondDot.Y), xShift, yShift)) { line.Draw(sprite, line.GetColor(sel), xShift, yShift); } } } } }