Exemplo n.º 1
0
        public static void Summon(this Unit unit, Vector2Int position)
        {
            if (BattleManager.GetUnit(position) == null)
            {
                unit.OnPosition.after.RemoveListener(BattleView.MoveObject);
                unit.Position = position;
                // FieldManager.GetTile(position).SetUnit(unit);

                FieldManager.GetTile(position).OnTile(unit);
                BattleManager.instance.AllUnits.Add(unit);
                unit.ActionRate = 0;

                if (unit.Alliance == UnitAlliance.Party)
                {
                    GameManager.AddPartyUnit(unit);
                }

                BattleView.MakeUnitObject(unit);

                // 유닛 소환시 DownStair Button 활성화 검사
                // Model.Tiles.DownStair.CheckPartyDownStair();
            }
            else
            {
                Debug.LogWarning("이미 위치에 유닛이 존재합니다.");
            }
        }