예제 #1
0
    public static void createNotification(GameObject on, sprites name, string Text, Color color, bool spinning)
    {
        if (visibleCanvas != null)
        {
            reset();
        }

        Notification.spinning = spinning;
        Debug.Log("Creating Click options for: " + on.name);

        GameObject cam = Camera.main.gameObject;

        Vector3 createAt = on.transform.position;
        Vector3 above    = createAt;

        above.y += 30;

        RaycastHit hit;

        Physics.Raycast(above, createAt - above, out hit, 30.0f);
        Debug.Log("Top of element is at: " + hit.point);

        Vector3 camUp = cam.transform.up;

        camUp.Normalize();
        camUp *= 2.0f;

        createAt = hit.point + camUp;

        GameObject parent      = GameObject.Instantiate(canvas, createAt, cam.transform.rotation);
        GameObject iconCreated = GameObject.Instantiate(image, parent.transform);
        GameObject textCreated = GameObject.Instantiate(text, parent.transform);

        iconCreated.GetComponent <UnityEngine.UI.Image>().sprite = GetSprite(name);
        iconCreated.GetComponent <UnityEngine.UI.Image>().color  = color;
        textCreated.GetComponent <UnityEngine.UI.Text>().text    = Text;
        textCreated.GetComponent <UnityEngine.UI.Text>().color   = new Color(0.8f, 0.8f, 0.8f);

        if (Text.Equals(""))
        {
            iconCreated.transform.localPosition = Vector3.zero;
        }

        if (name.Equals(sprites.Starting) && spinning)
        {
            spinMode2 = true;
        }
        else
        {
            spinMode2 = false;
        }

        visibleCanvas = parent;
        visibleImage  = iconCreated;
        visibleText   = textCreated;
        setAlpha(0.0f);
    }
예제 #2
0
    private static Sprite GetSprite(sprites sprite)
    {
        switch (sprite)
        {
        case sprites.Energy_Low:
            return(availSprites[0]);

        case sprites.Working:
            return(availSprites[1]);

        case sprites.Starting:
            return(availSprites[2]);

        case sprites.Stopping:
            return(availSprites[3]);

        case sprites.Targeting:
            return(availSprites[4]);

        default:
            return(null);
        }
    }
예제 #3
0
this.sprites[^ 1].Add(sprites[i]);
예제 #4
0
 public static void createNotification(GameObject on, sprites name, string Text, Color color)
 {
     createNotification(on, name, Text, color, false);
 }
예제 #5
0
 // Use this for initialization
 void Start()
 {
     i             = 0;
     currentSprite = sprites.bugs;
     ChangeSpritesByEnum();
 }
예제 #6
0
 public void OpenBackgroundSprites()
 {
     currentSprite = sprites.background;
     ChangeSpritesByEnum();
 }
예제 #7
0
 public void OpenFoodSprites()
 {
     currentSprite = sprites.food;
     ChangeSpritesByEnum();
 }
예제 #8
0
 public void OpenBugsSprites()
 {
     currentSprite = sprites.bugs;
     ChangeSpritesByEnum();
 }