void Update()
        {
            // Pass the sun info to the material
            if (sun == null)
            {
                var lights = Light.GetLights(LightType.Directional, SortingLayer.GetLayerValueFromName("Default"));
                if (lights.Length > 0)
                {
                    sun = lights[0];
                }
            }

            if (material == null || !material.HasProperty("_Sun") || !material.HasProperty("_SunColor") || sun == null)
            {
                return;
            }
            material.SetVector("_Sun", -sun.transform.forward);
            material.SetColor("_SunColor", sun.color);

            if (enableDisplace)
            {
                var _Time_ = Time.realtimeSinceStartup;
                material.SetFloat("_Time_", _Time_);
            }
        }
Ejemplo n.º 2
0
        internal static void Create()
        {
            go = new GameObject("MouseOverText", typeof(RectTransform));
            go.transform.SetParent(GameObject.FindGameObjectWithTag("PassiveCanvas").transform, false);
            go.layer = SortingLayer.GetLayerValueFromName("Ignore Raycast");
            RectTransform tr = go.transform as RectTransform;

            tr.sizeDelta = new Vector2(SIZE_X, SIZE_Y);
            tr.pivot     = new Vector2(0, 1);
            tr.anchorMin = new Vector2(0, 0);
            tr.anchorMax = new Vector2(0, 0);
            Image im = go.AddComponent <Image>();

            im.sprite = Graphics.GetSprite("mouseover_window_bg");
            im.type   = Image.Type.Sliced;
            GameObject go2 = new GameObject("text", typeof(RectTransform));

            go2.transform.SetParent(go.transform, false);
            RectTransform tr2 = go2.transform as RectTransform;

            tr2.anchorMin        = new Vector2(0, 0);
            tr2.anchorMax        = new Vector2(1, 1);
            tr2.offsetMin        = new Vector2(6, 6);
            tr2.offsetMax        = new Vector2(-6, -6);
            tr2.anchoredPosition = new Vector2(0, 0);
            tx           = go2.AddComponent <Text>();
            tx.font      = Graphics.GetStandardFont();
            tx.fontSize  = 12;
            tx.color     = Graphics.Color_.text;
            tx.alignment = TextAnchor.UpperLeft;

            go.AddComponent <MouseOverScript>();
            go.SetActive(false);
        }
Ejemplo n.º 3
0
 private void SetRenderLayerOrderToBLUR()
 {
     for (int i = 0; i < lineRenderers.Length; i++)
     {
         lineRenderers[i].GetComponent <LineRenderer>().sortingOrder = SortingLayer.GetLayerValueFromName("Background");
     }
 }
Ejemplo n.º 4
0
    //Create Fader object and assing the fade scripts and assign all the variables
    public static void Fade(string inSceneName, Color inColor, float inDamp)
    {
        GameObject goCanvas;

        goCanvas = new GameObject("FadeCanvas");
        Canvas cCanvas = goCanvas.AddComponent <Canvas>();

        cCanvas.renderMode = RenderMode.ScreenSpaceOverlay;
        goCanvas.AddComponent <CanvasScaler>();
        goCanvas.AddComponent <GraphicRaycaster>();
        goCanvas.layer       = SortingLayer.GetLayerValueFromName("UI");
        cCanvas.sortingOrder = 100;

        GameObject goPanel = new GameObject("FadePanel");

        goPanel.AddComponent <CanvasRenderer>();
        Image cImage = goPanel.AddComponent <Image>();

        cImage.color = new Color(0, 0, 0, 0);
        Fader fader = goPanel.AddComponent <Fader>();

        fader.fadeDamp  = inDamp;
        fader.fadeScene = inSceneName;
        fader.fadeColor = inColor;
        fader.start     = true;


        goPanel.transform.SetParent(goCanvas.transform);
        RectTransform rectTransform = goPanel.GetComponent <RectTransform>();

        rectTransform.anchorMin        = Vector2.zero;
        rectTransform.anchorMax        = Vector2.one;
        rectTransform.pivot            = new Vector2(0.5f, 0.5f);
        rectTransform.anchoredPosition = Vector2.zero;
    }
Ejemplo n.º 5
0
 public void AddTarget(Transform trans)
 {
     target       = GameObject.Instantiate(trans.gameObject);
     target.layer = SortingLayer.GetLayerValueFromName("ImageViewer");
     if (scene.IsValid())
     {
         SceneManager.MoveGameObjectToScene(target, scene);
     }
 }
Ejemplo n.º 6
0
        public void AddToQueue(PixelRenderer subject, bool doUpdate)
        {
            #if (UNITY_EDITOR)
            // Prevent triggering of render from scene view
            if (new List <Camera>(UnityEditor.SceneView.GetAllSceneCameras()).Contains(Camera.current))
            {
                return;
            }
            #endif
            // Don't add to queue if the active camera is already the render camera
            if (Camera.current == renderCamera)
            {
                return;
            }

            // Get the subject bounding rect
            Rect bounds = subject.Bounds;

            if (doUpdate)
            {
                // Prep the subject and sub-sprites
                subject.Prep(tempLayer);
                subject.BroadcastMessage("PrepSubSprite", tempLayer, SendMessageOptions.DontRequireReceiver);

                // Position the render camera
                renderCamera.transform.position = (Vector3)((Vector2)subject.transform.position + bounds.position) + Vector3.forward * renderCamera.transform.position.z;
                renderCamera.orthographicSize   = bounds.size.y / 2;
                renderCamera.targetTexture      = subject.RenderTarget;

                // Take the picture
                renderCamera.Render();
                renderCamera.targetTexture = null;

                // Release the subject and sub-sprites
                subject.Release();
                subject.BroadcastMessage("ReleaseSubSprite", SendMessageOptions.DontRequireReceiver);
            }

            // Add item to draw queue
            Matrix4x4 transformMatrix = new Matrix4x4(
                new Vector4(bounds.size.x, 0, 0, 0),
                new Vector4(0, bounds.size.y, 0, 0),
                new Vector4(0, 0, 1, 0),
                new Vector4(subject.transform.position.x + bounds.position.x, subject.transform.position.y + bounds.position.y, 0, 1)
                );
            //transformMatrix = mainCamera.transform.worldToLocalMatrix * transformMatrix;

            int          order = subject.orderInLayer + SortingLayer.GetLayerValueFromName(subject.sortingLayer) * sortingLayerContribution;
            DrawMeshItem item  = new DrawMeshItem(subject.RenderTarget, transformMatrix, subject.material ? subject.material : defaultMaterial, subject.outlineColor, subject.palette ? subject.palette : defaultPalette);
            while (drawQueue.ContainsKey(order))
            {
                order++;
            }
            drawQueue.Add(order, item);
        }
Ejemplo n.º 7
0
    // Use this for initialization
    void Start()
    {
        SortingLayerID = SortingLayer.GetLayerValueFromName("UI Text");
        Renderer renderer = this.gameObject.GetComponent <Renderer>();

        if (renderer != null)
        {
            renderer.sortingOrder   = SortLayer;
            renderer.sortingLayerID = SortingLayerID;
        }
    }
Ejemplo n.º 8
0
        private void DrawSortingLayer()
        {
            m_RendererSerializedObject.Update();

            Rect rect = EditorGUILayout.GetControlRect(true, EditorGUIUtility.singleLineHeight);

            // Special handling for Presets where the sorting layer, id and order is serialized with the text object instead of on the MeshRenderer.
            SerializedProperty sortingLayerProp   = IsPreset ? m_TextSortingLayerProp : m_RendererSortingLayerProp;
            SerializedProperty sortingLayerIDProp = IsPreset ? m_TextSortingLayerIDProp : m_RendererSortingLayerIDProp;

            EditorGUI.BeginProperty(rect, k_SortingLayerLabel, sortingLayerIDProp);
            EditorGUI.BeginChangeCheck();

            int currentLayerIndex = SortingLayerHelper.GetSortingLayerIndexFromSortingLayerID(sortingLayerIDProp.intValue);
            int newLayerIndex     = EditorGUI.Popup(rect, k_SortingLayerLabel, currentLayerIndex, k_SortingLayerNames);

            if (EditorGUI.EndChangeCheck())
            {
                sortingLayerIDProp.intValue = SortingLayer.NameToID(k_SortingLayerNames[newLayerIndex]);
                sortingLayerProp.intValue   = SortingLayer.GetLayerValueFromName(k_SortingLayerNames[newLayerIndex]);
                m_HavePropertiesChanged     = true;

                // Sync Sorting Layer ID change on potential sub text object.
                TextMeshPro textComponent = m_TextComponent as TextMeshPro;
                textComponent.UpdateSubMeshSortingLayerID(sortingLayerIDProp.intValue);
            }

            EditorGUI.EndProperty();

            // Sorting Order
            SerializedProperty sortingOrderLayerProp = IsPreset ? m_TextSortingOrderProp : m_RendererSortingOrderProp;

            EditorGUI.BeginChangeCheck();

            EditorGUILayout.PropertyField(sortingOrderLayerProp, k_OrderInLayerLabel);

            if (EditorGUI.EndChangeCheck())
            {
                m_HavePropertiesChanged = true;

                TextMeshPro textComponent = m_TextComponent as TextMeshPro;
                textComponent.UpdateSubMeshSortingOrder(sortingOrderLayerProp.intValue);
            }

            m_RendererSerializedObject.ApplyModifiedProperties();

            EditorGUILayout.Space();
        }
Ejemplo n.º 9
0
    private bool IsUnderSprite(InputBhv currentInput, RaycastHit2D[] hitsInformation)
    {
        var currentSprite = currentInput.GetComponent <SpriteRenderer>();

        if (currentSprite == null)
        {
            return(false);
        }
        foreach (var hitInformation in hitsInformation)
        {
            var tmpSprite = hitInformation.transform.gameObject.GetComponent <SpriteRenderer>();
            if (tmpSprite != null &&
                SortingLayer.GetLayerValueFromName(tmpSprite.sortingLayerName) > SortingLayer.GetLayerValueFromName(currentSprite.sortingLayerName))
            {
                return(true);
            }
        }
        return(false);
    }
    public static int GetLayerValueFromName_s(IntPtr l)
    {
        int result;

        try
        {
            string name;
            LuaObject.checkType(l, 1, out name);
            int layerValueFromName = SortingLayer.GetLayerValueFromName(name);
            LuaObject.pushValue(l, true);
            LuaObject.pushValue(l, layerValueFromName);
            result = 2;
        }
        catch (Exception e)
        {
            result = LuaObject.error(l, e);
        }
        return(result);
    }
Ejemplo n.º 11
0
    private void ShowTweetAndRemoveFromPoolAfterUse()
    {
        var tweets = TwitterApiProvider.publicTweets;

        if (tweets.Any() && !tweetShown && TwitterApiProvider.canNextTweetBeShown)
        {
            TwitterApiProvider.canNextTweetBeShown = false;

            var randomNumber = new System.Random();
            var number       = randomNumber.Next(0, tweets.Count);
            tweetPrefab.GetComponent <TMPro.TextMeshPro>().text = tweets[number].text;
            var renderer = tweetPrefab.GetComponent <MeshRenderer>();
            renderer.sortingOrder   = 1000;
            renderer.sortingLayerID = SortingLayer.GetLayerValueFromName("Default");

            tweets.RemoveAt(number);
            tweetShown = true;

            Destroy(Instantiate(tweetPrefab, transform), 5f);
            Invoke(nameof(ResetCanNextTweetBeShown), 5f);
        }
    }
Ejemplo n.º 12
0
    private void DrawLineOfSight()
    {
        if (!deploy.isDeployed())
        {
            linerenderer.enabled = false;
        }
        linerenderer.enabled = true;
        Vector3 position = transform.position;

        position.z = -1.0f;
        Vector2 direction = deploy.direction().normalized *fieldOfView;

        if (target != null)
        {
            direction = target.transform.position - transform.position;
            direction = direction.normalized * fieldOfView;
        }
        linerenderer.positionCount = 2;
        linerenderer.SetPosition(0, position);
        linerenderer.SetPosition(1, position + (Vector3)direction);
        linerenderer.startWidth   = 0;
        linerenderer.endWidth     = 1 * fieldOfView;
        linerenderer.sortingOrder = SortingLayer.GetLayerValueFromName("Unit");
    }
Ejemplo n.º 13
0
 // Start is called before the first frame update
 void Start()
 {
     frontLayer = SortingLayer.GetLayerValueFromName(frontLayerName);
     backLayer = SortingLayer.GetLayerValueFromName(backLayerName);
     player = GameObject.FindGameObjectWithTag("Player").transform;
 }
Ejemplo n.º 14
0
        static bool ImportMapObject(TMX.Object mapObject, ImportedTileset[] importedTilesets, Dictionary <string, ImportedTemplate> importedTemplates, GameObject newObjectLayer, int mapTileWidth, int mapTileHeight, int sortingLayer,
                                    ITilemapImportOperation[] importOperations, string tilesetDir, int cellWidth, int cellHeight, int pixelsPerUnit, string tmxParentFolder)
        {
            ImportedTileset replacementTileset = null;

            if (mapObject.template != null)
            {
                // Fill out empty object fields with data from the template.
                // The template could have a tile from it's own tileset reference, so in that case, use the template tileset instead, and the template object GID
                TMX.Object combinedMapObject = ApplyTemplate(mapObject, tmxParentFolder, tilesetDir, cellWidth, cellHeight, pixelsPerUnit, importedTemplates, out replacementTileset);

                if (combinedMapObject == null)
                {
                    Debug.LogError("Could not load template for map object " + mapObject);
                    return(false);
                }
                else
                {
                    mapObject = combinedMapObject;
                }
            }
            mapObject.InitialiseUnsetValues(); // We need special code to set defaults here, because setting them before merging with a template would give incorrect results.

            // Use the template's tileset (and the gid that's been set by ApplyTemplate)
            if (replacementTileset != null)
            {
                importedTilesets = new ImportedTileset[] { replacementTileset };
            }

            ImportedTile importedTile;

            TSX.Tile  tilesetTile; // Unused
            Matrix4x4 matrix;

            TiledUtils.FindTileDataAndMatrix(mapObject.gid.Value, importedTilesets, cellWidth, cellHeight, out importedTile, out tilesetTile, out matrix);

            Vector2 pixelsToUnits = new Vector2(1.0f / mapTileWidth, -1.0f / mapTileHeight);

            GameObject newObject = new GameObject(mapObject.name);

            newObject.transform.SetParent(newObjectLayer.transform, false);

            // So we gain the tile rotation/flipping
            newObject.transform.FromMatrix(matrix);

            Vector2 corner = Vector2.Scale(new Vector2(mapObject.x.Value, mapObject.y.Value), pixelsToUnits);

            if (importedTile != null)
            {
                Tile    unityTile          = importedTile.tile;
                Vector2 pivotProportion    = new Vector2(unityTile.sprite.pivot.x / unityTile.sprite.rect.width, unityTile.sprite.pivot.y / unityTile.sprite.rect.height);
                Vector3 pivotWorldPosition = corner + Vector2.Scale(new Vector2(mapObject.width.Value * pivotProportion.x, mapObject.height.Value * -pivotProportion.y), pixelsToUnits);
                newObject.transform.localPosition += pivotWorldPosition;

                SpriteRenderer renderer = newObject.AddComponent <SpriteRenderer>();
                renderer.sprite       = unityTile.sprite;
                renderer.sortingOrder = sortingLayer;
                if (unityTile.colliderType == Tile.ColliderType.Sprite)
                {
                    newObject.AddComponent <PolygonCollider2D>();
                }
                else if (unityTile.colliderType == Tile.ColliderType.Grid)
                {
                    newObject.AddComponent <BoxCollider2D>();
                }
                Vector2 scale = new Vector2(mapObject.width.Value / unityTile.sprite.rect.width, mapObject.height.Value / unityTile.sprite.rect.height);
                newObject.transform.localScale = Vector3.Scale(newObject.transform.localScale, new Vector3(scale.x, scale.y, 1.0f));
            }
            else
            {
                Vector3 pivotWorldPosition = corner + Vector2.Scale(new Vector2(mapObject.width.Value * 0.5f, mapObject.height.Value * 0.5f), pixelsToUnits);
                newObject.transform.localPosition += pivotWorldPosition;
                // If no tile used, must be a non-tile object of some sort (collision or text)
                if (mapObject.ellipse != null)
                {
                    EllipseCollider2D collider = newObject.AddComponent <EllipseCollider2D>();
                    collider.RadiusX = (mapObject.width.Value * 0.5f) / mapTileWidth;
                    collider.RadiusY = (mapObject.height.Value * 0.5f) / mapTileHeight;
                }
                else if (mapObject.polygon != null)
                {
                    PolygonCollider2D collider = newObject.AddComponent <PolygonCollider2D>();
                    string            points   = mapObject.polygon.points;
                    collider.points = ImportUtils.PointsFromString(points, pixelsToUnits);
                }
                else if (mapObject.polyline != null)
                {
                    EdgeCollider2D collider = newObject.AddComponent <EdgeCollider2D>();
                    string         points   = mapObject.polyline.points;
                    collider.points = ImportUtils.PointsFromString(points, pixelsToUnits);
                }
                else if (mapObject.text != null)
                {
                    TextMesh textMesh = newObject.AddComponent <TextMesh>();
                    textMesh.text   = mapObject.text.text;
                    textMesh.anchor = TextAnchor.MiddleCenter;

                    Color color = Color.white;
                    if (mapObject.text.color != null)
                    {
                        ColorUtility.TryParseHtmlString(mapObject.text.color, out color);
                    }
                    textMesh.color = color;

                    // Saving an OS font as an asset in unity (through script) is seemingly impossible right now in a platform independent way
                    // So we'll skip fonts for now

                    textMesh.fontSize = (int)mapObject.text.pixelsize; // Guess a good resolution for the font
                    float targetWorldTextHeight = (float)mapObject.text.pixelsize / (float)mapTileHeight;
                    textMesh.characterSize = targetWorldTextHeight * 10.0f / textMesh.fontSize;

                    Renderer renderer = textMesh.gameObject.GetComponent <MeshRenderer>();
                    renderer.sortingOrder   = sortingLayer;
                    renderer.sortingLayerID = SortingLayer.GetLayerValueFromName("Default");
                }
                else
                {
                    // Regular box collision
                    BoxCollider2D collider = newObject.AddComponent <BoxCollider2D>();
                    collider.size = new Vector2(mapObject.width.Value / mapTileWidth, mapObject.height.Value / mapTileHeight);
                }
            }

            if (mapObject.rotation != 0.0f)
            {
                newObject.transform.RotateAround(corner, new Vector3(0.0f, 0.0f, 1.0f), -mapObject.rotation.Value);
            }

            if (mapObject.visible == false)
            {
                Renderer renderer = newObject.GetComponent <Renderer>();
                if (renderer != null)
                {
                    renderer.enabled = false;
                }
            }

            IDictionary <string, string> properties = (mapObject.properties == null ? new Dictionary <string, string>() : mapObject.properties.ToDictionary());

            foreach (ITilemapImportOperation operation in importOperations)
            {
                operation.HandleCustomProperties(newObject, properties);
            }
            return(true);
        }
Ejemplo n.º 15
0
        // [MenuItem("Assets/ChangeOrderLayer")]
        public static void ChangeLayer()
        {
            return;

            var selected = (GameObject)Selection.activeObject;


            foreach (var spriteRend in selected.GetComponentsInChildren <SpriteRenderer>())
            {
                if (spriteRend.sortingLayerID == 825352053)
                {
                    spriteRend.sortingLayerName = "Terrain";
                }
                else if (spriteRend.sortingLayerID == 1695910223)
                {
                    spriteRend.sortingLayerName = "Overlays";
                }
                else
                {
                    Debug.Log(spriteRend.name + " -> " + spriteRend.sortingLayerID + " -> " + spriteRend.sortingLayerName + "  -- " + SortingLayer.GetLayerValueFromName("Terrain"));
                }

                //spriteRend.sortingLayerName = "Terrain";
            }

            //  ChangeLayersRecursively(selected.GetComponent<Transform>(), "Terrain");

            Debug.Log(selected);
        }
Ejemplo n.º 16
0
 public static int GetLayerValueFromName(string name)
 {
     return(SortingLayer.GetLayerValueFromName(name));
 }
Ejemplo n.º 17
0
    //Generate Message System objects via code
    public static void generateMessageSystem()
    {
        //Create Message System object
        messageSystem = new GameObject("Message System");
        messageSystem.transform.parent = uiManager.transform;
        messageSystem.tag   = "MessageSystem";
        messageSystem.layer = SortingLayer.GetLayerValueFromName("UI");
        //add canvas
        messageSystem.AddComponent <Canvas>();
        messageSystem.GetComponent <Canvas>().renderMode   = RenderMode.ScreenSpaceOverlay;
        messageSystem.GetComponent <Canvas>().pixelPerfect = true;
        //add canvas scaler
        messageSystem.AddComponent <UnityEngine.UI.CanvasScaler>();
        messageSystem.GetComponent <UnityEngine.UI.CanvasScaler>().uiScaleMode            = UnityEngine.UI.CanvasScaler.ScaleMode.ScaleWithScreenSize;
        messageSystem.GetComponent <UnityEngine.UI.CanvasScaler>().referenceResolution    = new Vector2(1024, 768);
        messageSystem.GetComponent <UnityEngine.UI.CanvasScaler>().screenMatchMode        = UnityEngine.UI.CanvasScaler.ScreenMatchMode.Expand;
        messageSystem.GetComponent <UnityEngine.UI.CanvasScaler>().referencePixelsPerUnit = 16;
        //Add graphics raycaster
        messageSystem.AddComponent <UnityEngine.UI.GraphicRaycaster>();
        messageSystem.AddComponent <CanvasRenderer>();

        //Create Message Skin object
        GameObject messageSkin = new GameObject("Message Skin");

        messageSkin.transform.parent = messageSystem.transform;
        messageSkin.layer            = SortingLayer.GetLayerValueFromName("UI");
        //adjust Rect Transform
        messageSkin.AddComponent <RectTransform>();
        messageSkin.GetComponent <RectTransform>().position  = new Vector3(-8, 56, 0);
        messageSkin.GetComponent <RectTransform>().sizeDelta = new Vector2(1012, 128);
        messageSkin.GetComponent <RectTransform>().anchorMin = new Vector2(0, 0);
        messageSkin.GetComponent <RectTransform>().anchorMax = new Vector2(0, 0);
        messageSkin.GetComponent <RectTransform>().pivot     = new Vector2(0, 0);
        messageSkin.AddComponent <CanvasRenderer>();
        messageSkin.AddComponent <UnityEngine.UI.Image>();
        messageSkin.GetComponent <UnityEngine.UI.Image>().enabled = false;
        messageSkin.GetComponent <UnityEngine.UI.Image>().sprite  = Resources.Load("Graphics/WindowSkins/speech hgss 2", typeof(Sprite)) as Sprite;
        messageSkin.GetComponent <UnityEngine.UI.Image>().type    = UnityEngine.UI.Image.Type.Sliced;
        //add canvas
        messageSkin.AddComponent <Canvas>();
        messageSkin.GetComponent <Canvas>().pixelPerfect = true;

        //Create Message BG object
        GameObject messageBG = new GameObject("Message BG");

        messageBG.transform.parent = messageSystem.transform;
        messageBG.layer            = SortingLayer.GetLayerValueFromName("UI");
        //adjust Rect Transform
        messageBG.AddComponent <RectTransform>();
        messageBG.GetComponent <RectTransform>().position  = new Vector3(14.15f, 70, 0);
        messageBG.GetComponent <RectTransform>().sizeDelta = new Vector2(945.7f, 100);
        messageBG.GetComponent <RectTransform>().anchorMin = new Vector2(0, 0);
        messageBG.GetComponent <RectTransform>().anchorMax = new Vector2(0, 0);
        messageBG.GetComponent <RectTransform>().pivot     = new Vector2(0, 0);
        messageBG.AddComponent <CanvasRenderer>();
        messageBG.AddComponent <UnityEngine.UI.Image>();
        messageBG.GetComponent <UnityEngine.UI.Image>().enabled        = false;
        messageBG.GetComponent <UnityEngine.UI.Image>().color          = Color.white;
        messageBG.GetComponent <UnityEngine.UI.Image>().raycastTarget  = true;
        messageBG.GetComponent <UnityEngine.UI.Image>().preserveAspect = false;
        //add canvas
        messageBG.AddComponent <Canvas>();
        messageBG.GetComponent <Canvas>().pixelPerfect = true;

        //Create Message Text object
        //Create Message BG object
        GameObject messageText = new GameObject("Message Text");

        messageText.transform.parent = messageSystem.transform;
        messageText.layer            = SortingLayer.GetLayerValueFromName("UI");
        //adjust Rect Transform
        messageText.AddComponent <RectTransform>();
        messageText.GetComponent <RectTransform>().position  = new Vector3(40, 115, 0);
        messageText.GetComponent <RectTransform>().sizeDelta = new Vector2(860, 96);
        messageText.GetComponent <RectTransform>().anchorMin = new Vector2(0, 0);
        messageText.GetComponent <RectTransform>().anchorMax = new Vector2(0, 0);
        messageText.GetComponent <RectTransform>().pivot     = new Vector2(0, 0.5f);
        messageText.AddComponent <CanvasRenderer>();
        messageText.AddComponent <UnityEngine.UI.Text>();
        messageText.GetComponent <UnityEngine.UI.Text>().font               = FontManager.getFont("Power Clear");
        messageText.GetComponent <UnityEngine.UI.Text>().fontSize           = 42;
        messageText.GetComponent <UnityEngine.UI.Text>().lineSpacing        = 1.7f;
        messageText.GetComponent <UnityEngine.UI.Text>().supportRichText    = true;
        messageText.GetComponent <UnityEngine.UI.Text>().horizontalOverflow = HorizontalWrapMode.Overflow;
        messageText.GetComponent <UnityEngine.UI.Text>().color              = Color.black;
    }
Ejemplo n.º 18
0
    //Generate Pause Menu Objects via code
    public static void generatePauseMenu()
    {
        //Create Pause Menu object
        pauseMenu = new GameObject("Pause Menu");
        pauseMenu.transform.parent = uiManager.transform;
        pauseMenu.layer            = SortingLayer.GetLayerValueFromName("UI");
        //add canvas
        pauseMenu.AddComponent <Canvas>();
        pauseMenu.GetComponent <Canvas>().renderMode   = RenderMode.ScreenSpaceOverlay;
        pauseMenu.GetComponent <Canvas>().pixelPerfect = true;
        //add canvas scaler
        pauseMenu.AddComponent <UnityEngine.UI.CanvasScaler>();
        pauseMenu.GetComponent <UnityEngine.UI.CanvasScaler>().uiScaleMode            = UnityEngine.UI.CanvasScaler.ScaleMode.ScaleWithScreenSize;
        pauseMenu.GetComponent <UnityEngine.UI.CanvasScaler>().referenceResolution    = new Vector2(1024, 768);
        pauseMenu.GetComponent <UnityEngine.UI.CanvasScaler>().screenMatchMode        = UnityEngine.UI.CanvasScaler.ScreenMatchMode.Expand;
        pauseMenu.GetComponent <UnityEngine.UI.CanvasScaler>().referencePixelsPerUnit = 16;
        //Add graphics raycaster
        pauseMenu.AddComponent <UnityEngine.UI.GraphicRaycaster>();
        pauseMenu.AddComponent <CanvasRenderer>();

        //Create Pause Skin object
        GameObject pauseSkin = new GameObject("Pause Skin");

        pauseSkin.transform.parent = pauseMenu.transform;
        pauseSkin.layer            = SortingLayer.GetLayerValueFromName("UI");
        //adjust Rect Transform
        pauseSkin.AddComponent <RectTransform>();
        pauseSkin.GetComponent <RectTransform>().anchorMin = new Vector2(1, 1);
        pauseSkin.GetComponent <RectTransform>().anchorMax = new Vector2(1, 1);
        pauseSkin.GetComponent <RectTransform>().pivot     = new Vector2(1, 1);
        pauseSkin.AddComponent <CanvasRenderer>();
        pauseSkin.AddComponent <UnityEngine.UI.Image>();
        pauseSkin.GetComponent <UnityEngine.UI.Image>().enabled = false;
        pauseSkin.GetComponent <UnityEngine.UI.Image>().sprite  = Resources.Load("Graphics/WindowSkins/choice 1", typeof(Sprite)) as Sprite;
        pauseSkin.GetComponent <UnityEngine.UI.Image>().type    = UnityEngine.UI.Image.Type.Sliced;
        //add canvas
        pauseSkin.AddComponent <Canvas>();
        pauseSkin.GetComponent <Canvas>().pixelPerfect = true;
        //Create Message BG object
        GameObject pauseText = new GameObject("Pause Text");

        pauseText.transform.parent = pauseMenu.transform;
        pauseText.layer            = SortingLayer.GetLayerValueFromName("UI");
        //adjust Rect Transform
        pauseText.AddComponent <RectTransform>();
        pauseText.GetComponent <RectTransform>().anchorMin = new Vector2(1, 1);
        pauseText.GetComponent <RectTransform>().anchorMax = new Vector2(1, 1);
        pauseText.GetComponent <RectTransform>().pivot     = new Vector2(1, 1);
        pauseText.AddComponent <CanvasRenderer>();
        pauseText.AddComponent <UnityEngine.UI.Text>();
        pauseText.GetComponent <UnityEngine.UI.Text>().font               = FontManager.getFont("Power Clear");
        pauseText.GetComponent <UnityEngine.UI.Text>().fontSize           = 42;
        pauseText.GetComponent <UnityEngine.UI.Text>().lineSpacing        = 2.0f;
        pauseText.GetComponent <UnityEngine.UI.Text>().supportRichText    = true;
        pauseText.GetComponent <UnityEngine.UI.Text>().horizontalOverflow = HorizontalWrapMode.Overflow;
        pauseText.GetComponent <UnityEngine.UI.Text>().color              = Color.black;
        //Create Pause Arrow object
        GameObject pauseArrow = new GameObject("Pause Selector");

        pauseArrow.transform.parent = pauseMenu.transform;
        pauseArrow.layer            = SortingLayer.GetLayerValueFromName("UI");
        //adjust Rect Transform
        pauseArrow.AddComponent <RectTransform>();
        pauseArrow.GetComponent <RectTransform>().anchorMin = new Vector2(1, 1);
        pauseArrow.GetComponent <RectTransform>().anchorMax = new Vector2(1, 1);
        pauseArrow.GetComponent <RectTransform>().pivot     = new Vector2(1, 1);
        pauseArrow.AddComponent <CanvasRenderer>();
        pauseArrow.AddComponent <UnityEngine.UI.Image>();
        pauseArrow.GetComponent <UnityEngine.UI.Image>().enabled = false;
        pauseArrow.GetComponent <UnityEngine.UI.Image>().type    = UnityEngine.UI.Image.Type.Sliced;
        //add canvas
        pauseArrow.AddComponent <Canvas>();
        pauseArrow.GetComponent <Canvas>().pixelPerfect = true;
    }
Ejemplo n.º 19
0
 // Use this for initialization
 void OnEnable()
 {
     layer = SortingLayer.GetLayerValueFromName(sortingLayer);
     GetComponent <MeshRenderer>().sortingLayerName = sortingLayer;
     GetComponent <MeshRenderer> ().sortingOrder    = orderInLayer;
 }
Ejemplo n.º 20
0
 protected override void Awake()
 {
     base.Awake();
     this.constructionMode = false;
     this.trackLayer       = SortingLayer.GetLayerValueFromName("Track");
 }