public virtual void PaintToHDC(IntPtr hDC, RoomEditorState state)
{
_objectBaselines.Clear();
foreach (RoomObject obj in _room.Objects)
{
if (obj.Baseline <= 0)
{
obj.EffectiveBaseline = obj.StartY;
}
else
{
obj.EffectiveBaseline = obj.Baseline;
}
_objectBaselines.Add(obj);
}
_objectBaselines.Sort();
foreach (RoomObject obj in _objectBaselines)
{
int height = GetSpriteHeightForGameResolution(obj.Image);
int ypos = AdjustYCoordinateForWindowScroll(obj.StartY, state) - (height * state.ScaleFactor);
Factory.NativeProxy.DrawSpriteToBuffer(obj.Image, AdjustXCoordinateForWindowScroll(obj.StartX, state), ypos, state.ScaleFactor);
}
}