Ejemplo n.º 1
0
        private void RemoveGroup(RandomBubbleGroup group)
        {
            Action action = delegate
            {
                var index = groups.IndexOf(group);

                RemoveRandomFromBoard(index);
                ShiftRandomGroups(index);

                DeleteGroup(index);
                definitions.RemoveAt(index);

                InitializeGroups();
                UpdateGroupCounts();

                ResizeContents();

                var modifier = manipulator.Modifier;
                if ((modifier != null) &&
                    (modifier.Type == BubbleModifierType.Random) &&
                    (int.Parse(modifier.Data) >= groups.Count))
                {
                    manipulator.SetModifier(null);
                }
            };

            if (group.Count > 0)
            {
                GameObject.Find("LevelEditor").GetComponent <LevelEditor>().ConfirmAction(action);
            }
            else
            {
                action.Invoke();
            }
        }
Ejemplo n.º 2
0
        private void CreateModifierButton(BubbleModifierDefinition modifier)
        {
            var button = Instantiate(bubbleButtonPrefab);

            button.name = modifier.Type.ToString();
            button.GetComponent <Image>().sprite = modifier.Sprite;
            var toggle = button.GetComponent <Toggle>();

            toggle.group = GetComponent <ToggleGroup>();
            toggle.onValueChanged.AddListener((value) =>
            {
                if (value)
                {
                    manipulator.SetModifier(modifier);
                    manipulator.SetActionType(ManipulatorActionType.PlaceModifier);
                }
            });
            button.transform.SetParent(transform, false);
        }