Main
using System;
using System.Collections.Generic;
using Sifteo;

namespace Libraries
{
    // Purpose:
    // Drawable object.
    public abstract class RenderObj : Obj, IComparable<RenderObj>
    {
        // Purpose:
        // Default constructor.
        public RenderObj()
        {
           
        }
       
        // Purpose:
        // Set whether the object should be allowed to render.
        // Value is true if it should, false if not.
        public void SetShow(bool show)
        {
            m_show = show;
        }

        // Purpose:
        // Get whether the object should be allowed to render.
        // Value is true if it should, false if not.
        public bool GetShow()
        {
            return m_show;
        }

        // Purpose:
        // Set the render order.
        public void SetRenderOrder(int order)
        {
            m_order = order;
        }

        // Purpose:
        // Get the render order.
        public int GetRenderOrder()
        {
            return m_order;
        }

        // Purpose:
        // Set the render layer.
        public void SetLayer(int layer)
        {
            m_layer = layer;
        }

        // Purpose:
        // Get the render layer.
        public int GetRenderLayer()
        {
            return m_layer;
        }
       
        // Purpose:
        // Used for ordering the render objects.
        public int CompareTo(RenderObj obj)
        {
            return m_order.CompareTo(obj.m_order);
        }

        // True if the sprite should be drawn when render happens, false if not.
        public bool m_show = false;

        // Object set to render.  Object changed and needs a render.
        public bool m_needsRender = false;

        // Set to true if the render object should rerender if the cube it is in renders.
        public bool m_renderIfCubeRender = false;

        // Which layer the object should be rendered in.  0 is the top layer.
        protected int m_layer = 0;

        // Order in which the object should be rendered in the layer.  0 should render first, then 1, then 2, etc.
        protected int m_order = 0;
    }
       
    // Purpose:
    // Sort object for the render.
    // Sorts in order.
    public class RenderSort: IComparer<RenderObj>
    {
        public int Compare(RenderObj x, RenderObj y)
        {
            return x.CompareTo(y);
        }
    }
   
}

 
Website copyright (c) 2012 Benjamin Millek, all rights reserved.