Beispiel #1
0
        public static void UpdateOrigin(GameObject go, Texture2D sprite, EOriginPosition originPositionEnum)
        {
            // --- Top ---

            // top left
            if (EOriginPosition.TopLeft == originPositionEnum)
            {
                go.Transform.Origin = new Vector2(0, 0);
            }
            // top mid
            else if (EOriginPosition.TopMid == originPositionEnum)
            {
                go.Transform.Origin = new Vector2((float)sprite.Width / 2f, 0);
            }
            // top rigth
            else if (EOriginPosition.TopRight == originPositionEnum)
            {
                go.Transform.Origin = new Vector2((float)sprite.Width, 0);
            }

            // --- Mid ---

            // mid left
            else if (EOriginPosition.MidLeft == originPositionEnum)
            {
                go.Transform.Origin = new Vector2(0, (float)sprite.Height / 2f);
            }
            // mid
            else if (EOriginPosition.Mid == originPositionEnum)
            {
                go.Transform.Origin = new Vector2((float)sprite.Width / 2f, (float)sprite.Height / 2f);
            }
            // mid rigth
            else if (EOriginPosition.MidRight == originPositionEnum)
            {
                go.Transform.Origin = new Vector2((float)sprite.Width, (float)sprite.Height / 2f);
            }

            // --- Bottom ---

            // bottom left
            else if (EOriginPosition.BottomLeft == originPositionEnum)
            {
                go.Transform.Origin = new Vector2(0, (float)sprite.Height);
            }
            // bottom mid
            else if (EOriginPosition.BottomMid == originPositionEnum)
            {
                go.Transform.Origin = new Vector2((float)sprite.Width / 2f, (float)sprite.Height);
            }
            // bottom rigth
            else if (EOriginPosition.BottomRight == originPositionEnum)
            {
                go.Transform.Origin = new Vector2((float)sprite.Width, (float)sprite.Height);
            }
        }
        private void TextToSlotBar(string text, Vector2 size, GameObject myParent, EOriginPosition originPosition, Vector2 padding)
        {
            GameObject go      = new GameObject();
            GUIText    guiText = new GUIText(SpriteContainer.Instance.NormalFont, Color.White, new Vector2(0.4f, 0.4f), text, originPosition);

            go.AddComponent <GUIText>(guiText);

            guiText.LayerDepth     = 0.13f;
            guiText.FontScale      = guiText.FontScale * GraphicsSetting.Instance.ScreenScale;
            guiText.OffsetPosition = new Vector2(padding.X * GraphicsSetting.Instance.ScreenScale.X, padding.Y * GraphicsSetting.Instance.ScreenScale.Y);
            go.MyParent            = myParent;
            go.Transform.Scale     = size;
            go.Transform.Position  = myParent.Transform.Position;

            myScene.Instantiate(go);
        }
Beispiel #3
0
        public static void UpdateOriginText(string text, Rectangle rectangle, SpriteFont spriteFont, Vector2 Scale, EOriginPosition originPositionEnum, ref Vector2 newPositon)
        {
            // --- Top ---

            // top left
            if (EOriginPosition.TopLeft == originPositionEnum)
            {
                var x = rectangle.X;
                var y = rectangle.Y;
                newPositon = new Vector2(x, y);
            }
            // top mid
            else if (EOriginPosition.TopMid == originPositionEnum)
            {
                var x = (rectangle.X + (rectangle.Width / 2)) - (spriteFont.MeasureString(text).X / 2) * Scale.X;
                var y = rectangle.Y;
                newPositon = new Vector2(x, y);
            }
            // top rigth
            else if (EOriginPosition.TopRight == originPositionEnum)
            {
                var x = (rectangle.X + (rectangle.Width / 1)) - (spriteFont.MeasureString(text).X / 1) * Scale.X;
                var y = rectangle.Y;
                newPositon = new Vector2(x, y);
            }

            // --- Mid ---

            // mid left
            else if (EOriginPosition.MidLeft == originPositionEnum)
            {
                var x = rectangle.X;
                var y = (rectangle.Y + (rectangle.Height / 2)) - (spriteFont.MeasureString(text).Y / 2) * Scale.Y;
                newPositon = new Vector2(x, y);
            }
            // mid
            else if (EOriginPosition.Mid == originPositionEnum)
            {
                var x = (rectangle.X + (rectangle.Width / 2)) - (spriteFont.MeasureString(text).X / 2) * Scale.X;
                var y = (rectangle.Y + (rectangle.Height / 2)) - (spriteFont.MeasureString(text).Y / 2) * Scale.Y;
                newPositon = new Vector2(x, y);
            }
            // mid rigth
            else if (EOriginPosition.MidRight == originPositionEnum)
            {
                var x = (rectangle.X + (rectangle.Width / 1)) - (spriteFont.MeasureString(text).X / 1) * Scale.X;
                var y = (rectangle.Y + (rectangle.Height / 2)) - (spriteFont.MeasureString(text).Y / 2) * Scale.Y;
                newPositon = new Vector2(x, y);
            }

            // --- Bottom ---

            // bottom left
            else if (EOriginPosition.BottomLeft == originPositionEnum)
            {
                var x = rectangle.X;
                var y = (rectangle.Y + (rectangle.Height / 1)) - (spriteFont.MeasureString(text).Y / 1) * Scale.Y;
                newPositon = new Vector2(x, y);
            }
            // bottom mid
            else if (EOriginPosition.BottomMid == originPositionEnum)
            {
                var x = (rectangle.X + (rectangle.Width / 2)) - (spriteFont.MeasureString(text).X / 2) * Scale.X;
                var y = (rectangle.Y + (rectangle.Height / 1)) - (spriteFont.MeasureString(text).Y / 1) * Scale.Y;
                newPositon = new Vector2(x, y);
            }
            // bottom rigth
            else if (EOriginPosition.BottomRight == originPositionEnum)
            {
                var x = (rectangle.X + (rectangle.Width / 1)) - (spriteFont.MeasureString(text).X / 1) * Scale.X;
                var y = (rectangle.Y + (rectangle.Height / 1)) - (spriteFont.MeasureString(text).Y / 1) * Scale.Y;
                newPositon = new Vector2(x, y);
            }
        }
Beispiel #4
0
 public GUIImage(CSpriteRenderer spriteRenderer, bool isWorldUI, bool blockUI, Color?color = null, EOriginPosition originPositionEnum = EOriginPosition.TopLeft, float layerDepth = 0)
 {
     this.SpriteRenderer       = spriteRenderer;
     this.IsWorldUI            = isWorldUI;
     this.BlockGUI             = blockUI;
     this.SpriteRenderer.Color = color ?? Color.White;
     this.SpriteRenderer.OriginPositionEnum = originPositionEnum;
     this.SpriteRenderer.LayerDepth         = layerDepth;
 }