コード例 #1
0
ファイル: EnemyEditor.cs プロジェクト: Slaktus/LaneDefender
    public void ShowEnemyLevels(EnemyDefinition definition, Vector3 position)
    {
        HideEnemyLevels();
        int count = definition.levels.Count;

        Add(_enemyLevels = new Layout("HeroLevels", 4, count + 1, 0.25f, 0.1f, count + 1, container));
        _enemyLevels.SetPosition(position + (Vector3.right * _enemyLevels.width * 0.5f) + (Vector3.back * _enemyLevels.height * 0.5f));

        _enemyLevels.Add(new List <Button>(
                             Button.GetButtons(count,
                                               (int index) => new Button("Level " + index, 4, 1, container, "Item", fontSize: 20,
                                                                         Enter: (Button button) => button.SetColor(button.selected ? button.color : Color.green),
                                                                         Stay: (Button button) =>
        {
            if (Input.GetMouseButtonDown(0))
            {
                _selectedEnemy = definition;
                _selectedLevel = index;
                ShowEnemyEditor();
                HideEnemyLevels();
            }
        },
                                                                         Exit: (Button button) => button.SetColor(button.selected ? button.color : Color.white))))
        {
            new Button("Add Enemy Level", 4, 1, container, "AddEnemyLevel", fontSize: 20,
                       Enter: ( Button button ) => button.SetColor(Color.green),
                       Stay: ( Button button ) =>
            {
                if (Input.GetMouseButtonDown(0))
                {
                    definition.AddLevel();
                    ShowEnemyLevels(definition, position);
                }
            },
                       Exit: ( Button button ) => button.SetColor(Color.white))
        }, true);
    }