예제 #1
0
        private void SetConditionalType(Genus2D.GameData.ConditionalBranchType type)
        {
            switch (type)
            {
            case Genus2D.GameData.ConditionalBranchType.PlayerPosition:
                PlayerPositionCheck.Checked = true;
                break;

            case Genus2D.GameData.ConditionalBranchType.MapEventPosition:
                MapEventPositionCheck.Checked = true;
                break;

            case Genus2D.GameData.ConditionalBranchType.ItemEquipped:
                ItemEquippedCheck.Checked = true;
                break;

            case Genus2D.GameData.ConditionalBranchType.ItemInInventory:
                ItemInInventoryCheck.Checked = true;
                break;

            case Genus2D.GameData.ConditionalBranchType.SystemVariable:
                SystemVariableCheck.Checked = true;
                break;

            case Genus2D.GameData.ConditionalBranchType.QuestStatus:
                QuestStatusCheck.Checked = true;
                break;

            case Genus2D.GameData.ConditionalBranchType.SelectedOption:
                SelectedOptionCheck.Checked = true;
                break;

            case Genus2D.GameData.ConditionalBranchType.TerrainTag:
                TerrainTagCheck.Checked = true;
                break;

            case Genus2D.GameData.ConditionalBranchType.PlayerDirection:
                PlayerDirectionCheck.Checked = true;
                break;

            case Genus2D.GameData.ConditionalBranchType.PlayerGold:
                PlayerGoldCheck.Checked = true;
                break;
            }
        }
예제 #2
0
        public void ApplyData()
        {
            Genus2D.GameData.ConditionalBranchType condition = GetConditionalType();
            _command.SetParameter("ConditionalBranchType", condition);

            int mapID;

            switch (condition)
            {
            case Genus2D.GameData.ConditionalBranchType.PlayerPosition:
                mapID = PlayerMap.SelectedIndex;

                if (mapID == -1)
                {
                    MessageBox.Show("Please select a valid map.");
                    return;
                }

                _command.SetParameter("PlayerMapID", mapID);
                _command.SetParameter("PlayerMapX", (int)PlayerX.Value);
                _command.SetParameter("PlayerMapY", (int)PlayerY.Value);
                break;

            case Genus2D.GameData.ConditionalBranchType.MapEventPosition:
                mapID = MapEventMap.SelectedIndex;
                int eventID = MapEvent.SelectedIndex;

                if (mapID == -1)
                {
                    MessageBox.Show("Please select a valid map.");
                    return;
                }
                if (eventID == -1)
                {
                    MessageBox.Show("Please select a valid map event.");
                    return;
                }

                _command.SetParameter("MapEventMapID", mapID);
                _command.SetParameter("MapEventID", eventID);
                _command.SetParameter("MapEventMapX", (int)MapEventX.Value);
                _command.SetParameter("MapEventMapY", (int)MapEventY.Value);

                break;

            case Genus2D.GameData.ConditionalBranchType.ItemEquipped:
                _command.SetParameter("EquippedItemID", ItemEquippedSelection.SelectedIndex);
                break;

            case Genus2D.GameData.ConditionalBranchType.ItemInInventory:
                _command.SetParameter("InventoryItemID", ItemInInventorySelection.SelectedIndex);
                _command.SetParameter("InventoryItemAmount", (int)InventoryItemStack.Value);
                break;

            case Genus2D.GameData.ConditionalBranchType.SystemVariable:

                _command.SetParameter("VariableID", VariableSelection.SelectedIndex);
                _command.SetParameter("VariableType", GetVariableType());

                switch (GetVariableType())
                {
                case Genus2D.GameData.VariableType.Integer:
                    _command.SetParameter("VariableIntegerValue", (int)VariableIntegerValue.Value);
                    _command.SetParameter("ValueCondition", (Genus2D.GameData.ConditionValueCheck)VariableValueCondition.SelectedIndex);
                    break;

                case Genus2D.GameData.VariableType.Float:
                    _command.SetParameter("VariableFloatValue", (float)VariableFloatValue.Value);
                    _command.SetParameter("ValueCondition", (Genus2D.GameData.ConditionValueCheck)VariableValueCondition.SelectedIndex);
                    break;

                case Genus2D.GameData.VariableType.Bool:
                    _command.SetParameter("VariableBoolValue", VariableBoolValue.SelectedIndex == 0 ? true : false);
                    break;

                case Genus2D.GameData.VariableType.Text:
                    _command.SetParameter("VariableTextValue", VariableTextValue.Text);
                    _command.SetParameter("TextCondition", (Genus2D.GameData.ConditionalTextCheck)VariableTextCondition.SelectedIndex);
                    break;
                }

                break;

            case Genus2D.GameData.ConditionalBranchType.QuestStatus:
                _command.SetParameter("QuestID", QuestSelection.SelectedIndex);
                _command.SetParameter("QuestStatus", GetQuestStatus());
                _command.SetParameter("QuestProgressionCondition", QuestProgressionCondition.SelectedIndex);
                _command.SetParameter("QuestProgression", QuestProgressionSelection.SelectedIndex);
                break;

            case Genus2D.GameData.ConditionalBranchType.SelectedOption:
                _command.SetParameter("SelectedOption", (int)SelectedOptionControl.Value);
                break;

            case Genus2D.GameData.ConditionalBranchType.TerrainTag:
                _command.SetParameter("TerrainTag", (int)TerrainTagControl.Value);
                break;

            case Genus2D.GameData.ConditionalBranchType.PlayerDirection:
                _command.SetParameter("PlayerDirection", (Genus2D.GameData.FacingDirection)PlayerDirectionSelection.SelectedIndex);
                break;

            case Genus2D.GameData.ConditionalBranchType.PlayerGold:
                _command.SetParameter("Gold", (int)GoldControl.Value);
                break;
            }

            _command.SetParameter("Result", ResultSelection.SelectedIndex == 0 ? true : false);
        }