コード例 #1
0
ファイル: EZCardSort.cs プロジェクト: nethz/UnityGame
    public void sort(EZCardSort.Type type)
    {
        type_ = type;
        IComparer<Transform> comparer = null;
        switch(type){
        case EZCardSort.Type.Lv:
            comparer = new LvComparer();
            break;
        case EZCardSort.Type.Quality:
            comparer = new QualityComparer();
            break;
        case EZCardSort.Type.MagicType:
            comparer = new MagicTypeComparer();
            break;
        case EZCardSort.Type.Attack:
            comparer = new AttackComparer();
            break;
        case EZCardSort.Type.Speed:
            comparer = new SpeedComparer();
            break;
        case EZCardSort.Type.MaxHealth:
            comparer = new MaxHealthComparer();
            break;

        }

        _table.comparer = comparer;
        _table.repositionNow = true;

        setBtnByType(type);
        PlayerPrefs.SetInt("card_sort", (int)(type_));
        PlayerPrefs.Save();
    }
コード例 #2
0
ファイル: EZCardSort.cs プロジェクト: nethz/UnityGame
    public void sort(EZCardSort.Type type)
    {
        type_ = type;
        IComparer <Transform> comparer = null;

        switch (type)
        {
        case EZCardSort.Type.Lv:
            comparer = new LvComparer();
            break;

        case EZCardSort.Type.Quality:
            comparer = new QualityComparer();
            break;

        case EZCardSort.Type.MagicType:
            comparer = new MagicTypeComparer();
            break;

        case EZCardSort.Type.Attack:
            comparer = new AttackComparer();
            break;

        case EZCardSort.Type.Speed:
            comparer = new SpeedComparer();
            break;

        case EZCardSort.Type.MaxHealth:
            comparer = new MaxHealthComparer();
            break;
        }

        _table.comparer      = comparer;
        _table.repositionNow = true;

        setBtnByType(type);
        PlayerPrefs.SetInt("card_sort", (int)(type_));
        PlayerPrefs.Save();
    }
コード例 #3
0
    public static ScenarioState GenerateNewScenarioState(GameBoard board, EnemySpawnGroupData enemySpawnGroup, bool isBossScenario = false)
    {
        List <EntityData> enemies = enemySpawnGroup.EnemiesToSpawn.Select(e => ScriptableObject.Instantiate(e)).ToList();

        List <ItemData> items = enemySpawnGroup.ItemsToSpawn.Select(t => ScriptableObject.Instantiate(t)).ToList();

        SpeedComparer comparer = new SpeedComparer();

        enemies.Sort(comparer);

        Direction stagnationDirection = GetStagnationDirectionFromEntrance(board.Entrance.Position, board.Width);

        ScenarioState generatedState = new ScenarioState(enemies, items, enemySpawnGroup.scenarioReward, stagnationDirection, isBossScenario);
        EntityData    player         = generatedState.player;

        player.SetPosition(board.Entrance.Position, generatedState);
        generatedState = RandomizeEntityStartingCoordinates(generatedState, enemies, board.Width, board.GetTileAtPosition(player.Position), board);

        Vector2Int exitPosition = board.Exit == null ? Vector2Int.zero : board.Exit.Position;

        generatedState = RandomizeItemStartingCoordinates(generatedState, items, exitPosition, board.Width);

        return(generatedState);
    }