示例#1
0
    public void Initialize(TileType tileType, MapModuleBase parentModule, int layerOrder = 0)
    {
        SetLayerOrder(layerOrder);

        this.parentModule = parentModule;
        this.tileType     = tileType;
        ChangeColor(Color.white);

        if (boxCollider == null)
        {
            boxCollider = gameObject.AddComponent <BoxCollider2D>();
        }

        if (tileType == TileType.Wall)
        {
            if (boxCollider != null)
            {
                boxCollider.enabled = true;
            }

            if (spriteRenderer != null)
            {
                spriteRenderer.sortingOrder = GameConstants.WallLayerMin;
            }

            if (objectShadow != null)
            {
                objectShadow.SetObjectShadow(spriteRenderer.sprite, GameConstants.WallLayerMin - 1);
            }

            if (objectShadow != null)
            {
                objectShadow.gameObject.SetActive(true);
            }

            return;
        }


        if (tileType == TileType.Door)
        {
            ChangeColor(Color.green);
            OpenDoor();
        }

        if (tileType == TileType.Normal)
        {
            if (boxCollider != null)
            {
                boxCollider.enabled = false;
            }
        }



        if (objectShadow != null)
        {
            objectShadow.gameObject.SetActive(false);
        }
    }
示例#2
0
 private void SetShadow()
 {
     if (objectShadow != null)
     {
         objectShadow.SetObjectShadow(spriteRenderer.sprite, GameConstants.ArticleLayerMin - 1);
     }
 }