Example #1
0
        public MinimapIcon(GameObject trackedObject, GameObject uiElement, GameObject uiPointer, Minimap.IconStyle style)
        {
            this.Rotation    = true;
            this.Style       = style;
            this.obj         = trackedObject.transform;
            this.uiRect      = uiElement.GetComponent <RectTransform>();
            this.pointerRect = uiPointer.GetComponent <RectTransform>();
            CatchDestroy component = this.obj.GetComponent <CatchDestroy>();

            if (component == null)
            {
                this.obj.gameObject.AddComponent <CatchDestroy>().target = uiElement;
            }
            else
            {
                if (component.target != null && component.target != uiElement)
                {
                    UnityEngine.Object.Destroy(component.target);
                }
                else
                {
                    component.target = uiElement;
                }
            }
        }
Example #2
0
        public MinimapIcon(GameObject trackedObject, GameObject uiElement, Minimap.IconStyle style)
        {
            this.rotation = false;
            this.style    = style;
            this.obj      = trackedObject.transform;
            this.uiRect   = uiElement.GetComponent <RectTransform>();
            CatchDestroy component = this.obj.GetComponent <CatchDestroy>();

            if (component == null)
            {
                this.obj.gameObject.AddComponent <CatchDestroy>().target = uiElement;
            }
            else if ((component.target != null) && (component.target != uiElement))
            {
                UnityEngine.Object.Destroy(component.target);
            }
            else
            {
                component.target = uiElement;
            }
        }
Example #3
0
        public static Minimap.MinimapIcon CreateWithRotation(RectTransform parent, GameObject trackedObject, Minimap.IconStyle style, float pointerDist)
        {
            UnityEngine.Sprite spriteForStyle = Minimap.GetSpriteForStyle(style);
            GameObject         uiElement      = new GameObject("MinimapIcon");
            RectTransform      transform      = uiElement.AddComponent <RectTransform>();

            transform.anchorMin = transform.anchorMax = new Vector3(0.5f, 0.5f);
            transform.sizeDelta = new Vector2((float)spriteForStyle.texture.width, (float)spriteForStyle.texture.height);
            Image image = uiElement.AddComponent <Image>();

            image.sprite = spriteForStyle;
            image.type   = Image.Type.Simple;
            uiElement.transform.SetParent(parent, false);
            GameObject    uiPointer  = new GameObject("IconPointer");
            RectTransform transform2 = uiPointer.AddComponent <RectTransform>();

            transform2.anchorMin = transform2.anchorMax = transform.anchorMin;
            transform2.sizeDelta = new Vector2((float)Minimap.pointerSprite.texture.width, (float)Minimap.pointerSprite.texture.height);
            Image image2 = uiPointer.AddComponent <Image>();

            image2.sprite = Minimap.pointerSprite;
            image2.type   = Image.Type.Simple;
            uiPointer.transform.SetParent(transform, false);
            transform2.anchoredPosition = new Vector2(0f, pointerDist);
            return(new Minimap.MinimapIcon(trackedObject, uiElement, uiPointer, style));
        }
Example #4
0
        public static Minimap.MinimapIcon Create(RectTransform parent, GameObject trackedObject, Minimap.IconStyle style)
        {
            UnityEngine.Sprite spriteForStyle = Minimap.GetSpriteForStyle(style);
            GameObject         uiElement      = new GameObject("MinimapIcon");
            RectTransform      transform      = uiElement.AddComponent <RectTransform>();

            transform.anchorMin = transform.anchorMax = new Vector3(0.5f, 0.5f);
            transform.sizeDelta = new Vector2((float)spriteForStyle.texture.width, (float)spriteForStyle.texture.height);
            Image image = uiElement.AddComponent <Image>();

            image.sprite = spriteForStyle;
            image.type   = Image.Type.Simple;
            uiElement.transform.SetParent(parent, false);
            return(new Minimap.MinimapIcon(trackedObject, uiElement, style));
        }
Example #5
0
 private void TrackGameObject(GameObject objToTrack, Color iconColor, bool trackOrientation, bool depthAboveAll = false, Minimap.IconStyle iconStyle = Minimap.IconStyle.Circle)
 {
     if (minimap != null)
     {
         Minimap.MinimapIcon minimapIcon;
         if (trackOrientation)
         {
             minimapIcon = Minimap.MinimapIcon.CreateWithRotation(this.minimap, objToTrack, iconStyle, this.MINIMAP_POINTER_DIST);
         }
         else
         {
             minimapIcon = Minimap.MinimapIcon.Create(this.minimap, objToTrack, iconStyle);
         }
         minimapIcon.SetColor(iconColor);
         minimapIcon.SetDepth(depthAboveAll);
         Vector2 sizeForStyle = this.GetSizeForStyle(iconStyle);
         if (this.maximized)
         {
             minimapIcon.SetSize(sizeForStyle);
             if (minimapIcon.Rotation)
             {
                 minimapIcon.SetPointerSize(this.MINIMAP_POINTER_SIZE, this.MINIMAP_POINTER_DIST);
             }
         }
         else
         {
             float num = 1f - ((float)this.MINIMAP_SIZE - this.MINIMAP_CORNER_SIZE) / (float)this.MINIMAP_SIZE;
             sizeForStyle.x = Mathf.Max(sizeForStyle.x * num, sizeForStyle.x * 0.5f);
             sizeForStyle.y = Mathf.Max(sizeForStyle.y * num, sizeForStyle.y * 0.5f);
             minimapIcon.SetSize(sizeForStyle);
             if (minimapIcon.Rotation)
             {
                 float num2 = this.MINIMAP_POINTER_SIZE * num;
                 num2 = Mathf.Max(num2, this.MINIMAP_POINTER_SIZE * 0.5f);
                 float num3 = (this.MINIMAP_POINTER_SIZE - num2) / this.MINIMAP_POINTER_SIZE;
                 num3 = this.MINIMAP_POINTER_DIST * num3;
                 minimapIcon.SetPointerSize(num2, num3);
             }
         }
         if (this.minimapIcons == null)
         {
             this.minimapIcons = new MinimapIcon[] { minimapIcon };
         }
         else
         {
             Minimap.MinimapIcon[] array = new Minimap.MinimapIcon[this.minimapIcons.Length + 1];
             for (int i = 0; i < this.minimapIcons.Length; i++)
             {
                 array[i] = this.minimapIcons[i];
             }
             array[array.Length - 1] = minimapIcon;
             this.minimapIcons       = array;
         }
     }
 }