Exemple #1
0
        //public void draw(MVector3 pos, MRectangle srcRect, MVector2 scale,
        //    MVector2 translate, MVector3 drawCenter, float angle, MVector4 color)
        public static void draw(int textureID, int pos, int srcRect, int scale,
                                int translate, int drawCenter, float angle, int color)
        {
            //m_graphicHandlerRef.getSpriteBatch().Draw(m_texture, m_graphicHandlerRef.getGameInstance().Window.ClientBounds, Color.White);

            Rectangle? rect;
            MRectangle trueRect = MRectangle.getFromStorage(srcRect);

            if (trueRect != null)
            {
                rect = trueRect.getRawData();
            }
            else
            {
                rect = null;
            }

            Vector2       scaleParam     = MVector2.getFromStorage(scale).getRawData();
            SpriteEffects sEffect        = generateSpriteEffect(ref scaleParam);
            Vector2       translateParam = MVector3.getFromStorage(pos).getRawAxistedVec2()
                                           + MVector2.getFromStorage(translate).getRawData();

            m_graphicHandlerRef.getSpriteBatch()
            .Draw(
                MTexture.getFromStorage(textureID).m_texture,
                translateParam,
                rect,
                MVector4.getFromStorage(color).getColor(),
                angle,
                MVector3.getFromStorage(drawCenter).getRawVec2(),
                scaleParam,
                sEffect,
                0.0f);
        }
Exemple #2
0
        public static void drawText(String content, int posID, int colorID, int dockType)
        {
            Vector2 stringSize = m_spriteFont.MeasureString(content);
            Vector2 position   = MVector3.getFromStorage(posID).getRawVec2();
            Vector2 origin;

            switch (dockType)
            {
            case DT_LEFT:
                origin = new Vector2(0.0f, 0.0f);
                break;

            case DT_CENTER:
                position.X -= stringSize.X / 2.0f;
                origin      = new Vector2(stringSize.X / 2.0f, 0.0f);
                break;

            case DT_RIGHT:
                position.X -= stringSize.X;
                origin      = new Vector2(stringSize.X, 0.0f);
                break;

            default:
                break;
            }

            m_graphicHandlerRef.getSpriteBatch().DrawString(m_spriteFont, content, position, MVector4.getFromStorage(colorID).getColor());
        }