Esempio n. 1
0
    public override void ColocarItem(ItemName midia)
    {
        if (itemNesteLocal == null)
        {
            itemNesteLocal = new GameObject("MidiaSobreEstaMesa");
            itemNesteLocal.AddComponent <SpriteRenderer>();//.sortingOrder = 5; //Comentei para não ficar na frente da Lurdinha quando ela estiver andando
            itemNesteLocal.transform.SetParent(this.transform);
        }

        var sr = itemNesteLocal.GetComponent <SpriteRenderer>();

        sr.sprite  = ItemSpriteDatabase.GetSpriteOf(midia);
        sr.enabled = true;

        switch (midia)
        {
        case ItemName.Caderno:
            sr.transform.localScale = Vector3.one * .17f;
            break;

        case ItemName.Jornais:
        case ItemName.JornaisERevistas:
        case ItemName.LivroDidatico:
            sr.transform.localScale = Vector3.one * .20f;
            break;

        default:
            sr.transform.localScale = Vector3.one * .25f;
            break;
        }

        sr.transform.localPosition = (Vector3)posicaoDoItem + new Vector3(0f, 0f, -0.1f);//o vetor3 é para ficar na frente da mesa
    }
Esempio n. 2
0
    public override void ColocarItem(ItemName midia)
    {
        if (itemNesteLocal == null)
        {
            itemNesteLocal = new GameObject("MidiaNoQuadro");
            itemNesteLocal.AddComponent <SpriteRenderer>();
            itemNesteLocal.transform.SetParent(this.transform);
        }

        var sr = itemNesteLocal.GetComponent <SpriteRenderer>();

        sr.sprite  = ItemSpriteDatabase.GetSpriteOf(midia);
        sr.enabled = true;

        switch (midia)
        {
        case ItemName.Cartazes:
            sr.transform.localScale = Vector3.one * .8f;
            break;

        case ItemName.CartazComColecaoDePenas:
            sr.transform.localScale = Vector3.one * .8f;
            sr.flipX = true;
            break;

        default:
            Debug.LogWarning("Não é possível colocar esta mídia sobre o quadro");
            break;
        }

        // Profundidade do item será a mesma que a do quadro negro
        var profundidade = this.transform.localPosition.z;

        itemNesteLocal.transform.localPosition = new Vector3(posicaoDoItem.x, posicaoDoItem.y, profundidade);
    }
Esempio n. 3
0
    public static void CreateItemSpriteDatabase()
    {
        ItemSpriteDatabase instance = ScriptableObject.CreateInstance <ItemSpriteDatabase>();

        AssetDatabase.CreateAsset(instance, "Assets/Scripts/Scriptable/Item Sprite Database.asset");
        AssetDatabase.SaveAssets();
    }
Esempio n. 4
0
    public void ShowBalloon(ItemName midiaMencionada)
    {
        spriteRenderer.enabled = true;

        // Apresentar conteúdo do balão e fazer com que a mídia ocupe o espaço
        // aproximado do interior do balão
        balloonContent.SetActive(true);
        rendererMidiaMencionada.sprite = ItemSpriteDatabase.GetSpriteOf(midiaMencionada);
        var balloonBounds = spriteRenderer.bounds;
        var itemBounds    = rendererMidiaMencionada.sprite.bounds;
        var factor        = 0.7f * Math.Max((balloonBounds.size.x / itemBounds.size.x), (balloonBounds.size.y / itemBounds.size.y));

        rendererMidiaMencionada.transform.localScale = new Vector3(factor, factor, factor);
    }
Esempio n. 5
0
 private void UpdateSprite()
 {
     if (!image)
     {
         image = GetComponent <Image>();
     }
     if (item == ItemName.SemNome)
     {
         image.enabled = false;
     }
     else
     {
         image.sprite  = ItemSpriteDatabase.GetSpriteOf(item);
         image.enabled = true;
     }
 }
Esempio n. 6
0
    public override void ColocarItem(ItemName midia)
    {
        // Remover item anterior
        RemoverItem();

        itemNesteLocal = new GameObject("MidiaSobreEstaMesa");
        itemNesteLocal.AddComponent <SpriteRenderer>().sortingOrder = 5;
        itemNesteLocal.transform.SetParent(this.transform);

        var sr = itemNesteLocal.GetComponent <SpriteRenderer>();

        sr.sprite  = ItemSpriteDatabase.GetSpriteOf(midia);
        sr.enabled = true;

        itemNesteLocal.transform.localPosition = posicaoDoItem;

        switch (midia)
        {
        case ItemName.TVComVHS:
        case ItemName.ReprodutorAudio:
            sr.transform.localScale = Vector3.one * .5f;
            sr.flipX = true;
            break;

        case ItemName.Mapa:
        case ItemName.GravacaoPassaro:
        case ItemName.Gravador:
            sr.transform.localScale = Vector3.one * .4f;
            break;

        case ItemName.Retroprojetor:
        case ItemName.RetroprojetorSlideCicloTrabalho:
        case ItemName.RetroprojetorSlideLinhaTempo:
        case ItemName.RetroprojetorSlideMapa:
            sr.transform.localScale     = Vector3.one * .3f;
            sr.transform.localPosition += new Vector3(.12f, .35f, 0);
            break;

        default:
            sr.transform.localScale = Vector3.one * .5f;
            break;
        }
    }
    private void Awake()
    {
        if (Instance == null)
        {
            Instance         = this;
            transform.parent = null;
            DontDestroyOnLoad(gameObject);
        }
        else
        {
            Destroy(gameObject);
        }

        // Pegar os sprites vinculados aos ItemName's pelo Inspector de
        // ItemSpriteDatabase e adicionar eles no dicionário desta classe
        dictionary = new Dictionary <ItemName, Sprite>();
        for (var i = 0; i < itemNameArray.Length; i++)
        {
            try { dictionary.Add(itemNameArray[i], spriteArray[i]); }
            catch (Exception) { /* Aceitar a Exception */ }
        }
    }
 private void UpdateSprite()
 {
     image.sprite = ItemSpriteDatabase.GetSpriteOf(itemName);
 }
Esempio n. 9
0
 public void SetMidia(ItemName midia)
 {
     Midia                     = midia;
     midiaImage.sprite         = ItemSpriteDatabase.GetSpriteOf(Midia);
     midiaImage.preserveAspect = true;
 }