Exemplo n.º 1
0
        private void DrawWaveList(float baseY)
        {
            if (ReferenceEquals(_waveController, null))
            {
                return;
            }

            //RefreshWaveList();

            var waves = Generator.Waves;

            var innerRect  = new Rect(0, baseY, ListUtils.GetWaveListWidth(0, MainButtonWidth, MiniButtonSize, Space, 20, false), ListUtils.GetScrollHeight(waves.Count + 1, Space, MainButtonHeight));
            var scrollRect = new Rect(0, baseY, ListUtils.GetWaveListWidth(0, MainButtonWidth, MiniButtonSize, Space, 20, true), position.height - baseY);

            using (new GuiColor(new Color(0.7f, 0.7f, 0.7f))) GUI.Box(new Rect(innerRect.x, innerRect.y, innerRect.width, scrollRect.height), GUIContent.none);

            _waveListScrollPosition = GUI.BeginScrollView(scrollRect, _waveListScrollPosition, innerRect);
            for (int i = 0; i < waves.Count; i++)
            {
                var wave = waves[i];
                DrawWaveHeader(i, wave, baseY, waves.Count);
            }

            if (GUI.Button(new Rect(Space, baseY + waves.Count * 55 + Space, MainButtonWidth, MainButtonHeight), "New wave"))
            {
                AddNewWave();
            }
            GUI.EndScrollView();

            if (!ReferenceEquals(_selectedWave, null))
            {
                DrawWaveInfo(ListUtils.GetWaveListWidth(0, MainButtonWidth, MiniButtonSize, Space, 20, true) + Space, baseY);
            }
        }