Пример #1
0
    // Retorna true se objeto 1 esta na frente de objeto 2. Caso nao, retorna falso.
    private bool EstaNaFrente(GameObject objeto1, GameObject objeto2)
    {
        IsoSprite isoSprite1 = objeto1.GetComponent <IsoSprite>();
        IsoSprite isoSprite2 = objeto2.GetComponent <IsoSprite>();

        if (isoSprite1.GetIsoY() < isoSprite2.GetIsoY())
        {
            if ((isoSprite1.GetIsoY() + isoSprite1.GetHeight()) <= isoSprite2.GetIsoY())
            {
                // Isosprite2 na frente de isosprite1
                return(false);
            }
            else if ((isoSprite1.GetIsoX() + isoSprite1.GetWidth()) <= isoSprite2.GetIsoX())
            {
                // Isosprite2 na frente de isosprite1
                return(false);
            }
            else
            {
                return(true);
            }
        }
        if (isoSprite2.GetIsoY() < isoSprite1.GetIsoY())
        {
            if ((isoSprite2.GetIsoY() + isoSprite2.GetHeight()) <= isoSprite1.GetIsoY())
            {
                // Isosprite2 na frente de isosprite1
                return(true);
            }
            else if ((isoSprite2.GetIsoX() + isoSprite2.GetWidth()) <= isoSprite1.GetIsoX())
            {
                // Isosprite2 na frente de isosprite1
                return(true);
            }
            else
            {
                return(false);
            }
        }
        else if (isoSprite1.GetIsoX() < isoSprite2.GetIsoX())
        {
            return(false);
        }
        else
        {
            return(true);
        }
    }
Пример #2
0
    private void Awake()
    {
        renderer = transform.GetComponentInChildren <SpriteRenderer>();
        motor    = GetComponent <CharacterMotor>();

        // Create shadow
        GameObject shadow = new GameObject("Shadow");

        shadowRenderer        = shadow.AddComponent <SpriteRenderer>();
        shadowRenderer.sprite = Resources.Load <Sprite>("shadow");
        IsoSprite isoSprite = shadow.AddComponent <IsoSprite>();

        shadow.transform.parent    = transform;
        isoSprite.alwaysOnBehindOf = renderer;
        isoSprite.sortingOffset    = 1;
    }