示例#1
0
        private void Start()
        {
            stateHolder.SetPhaseToExplore += HandleExplorePhase;
            stateHolder.SetPhaseToEvent   += HandleTileEventPhase;
            stateHolder.SetPhaseToCombat  += HandleCombatPhase;

            stateHolder.SetPhaseToExplore();
            stateHolder.SetFloor(1);
        }
示例#2
0
        public override void Activate()
        {
            StateHolder    stateHolder    = FindObjectOfType <StateHolder>();
            TilesContainer tilesContainer = FindObjectOfType <TilesContainer>();
            Player         player         = FindObjectOfType <Player>();

            stateHolder.SetFloor(stateHolder.GetCurrentFloor() + 1);
            tilesContainer.GenerateLevel(stateHolder.GetCurrentFloor());

            string[] description = new string[1];
            description[0] = GetDescription(stateHolder);
            FindObjectOfType <EventTextBox>().EnqueueDescriptions(description);

            for (int i = 0; i < tilesContainer.currentTileList.Count; i++)
            {
                if (i == player.currentTileIndex)
                {
                    continue;
                }

                Tile currentTile = tilesContainer.currentTileList[i];

                foreach (Transform child in tilesContainer.currentTileList[i].transform)
                {
                    if (!child.GetComponent <SpriteRenderer>())
                    {
                        continue;
                    }

                    float tileColor = currentTile.spriteColor;
                    child.GetComponent <SpriteRenderer>().color = new Color(tileColor, tileColor, tileColor, 0.15f);
                }
            }

            player.UpdateCurrentTile();
        }