Example #1
0
        private void bakeFinalButton_Click(object sender, EventArgs e)
        {
            //check topic permission
            if (CoreGlobals.getEditorMain().mPhoenixScenarioEditor.CheckTopicPermission("Sim") == false)
            {
                return;
            }

            TriggerFinalBake.eBuildMode mode = TriggerFinalBake.eBuildMode.NoOptimizations;
            try
            {
                mode = (TriggerFinalBake.eBuildMode)Enum.Parse(typeof(TriggerFinalBake.eBuildMode), buildModeCombo.SelectedItem.ToString());
            }
            catch (System.Exception ex2)
            {
                CoreGlobals.getErrorManager().OnException(ex2);
            }

            //export
            string fileName = Path.Combine(CoreGlobals.ScenarioDirectory, CoreGlobals.ScenarioFile);

            if (TriggerFinalBake.eBuildMode.NoOptimizations == mode)
            {
                XMBProcessor.CreateXMB(fileName, false);
            }
            else
            {
                string tempFile = TriggerFinalBake.OptimizeScenarioScripts(fileName, mode);
                XMBProcessor.CreateXMB(tempFile, false);
                File.Copy(tempFile + ".xmb", fileName + ".xmb", true);
            }
        }
Example #2
0
        private void Save()
        {
            try
            {
                if (mSavedFileName != "")
                {
                    XmlSerializer s  = new XmlSerializer(typeof(TriggerRoot), new Type[] { });
                    Stream        st = File.Open(mSavedFileName, FileMode.Create);

                    TriggerRoot root = TriggerData;
                    root.Name = Path.GetFileName(mSavedFileName);
                    root.Type = mType;
                    s.Serialize(st, root);
                    st.Close();

                    triggerHostArea1.Scan(true);

                    TriggerFinalBake.eBuildMode mode = TriggerFinalBake.eBuildMode.NoOptimizations;

                    try
                    {
                        mode = (TriggerFinalBake.eBuildMode)Enum.Parse(typeof(TriggerFinalBake.eBuildMode), buildMode.SelectedItem.ToString());
                    }
                    catch (System.Exception ex2)
                    {
                        CoreGlobals.getErrorManager().OnException(ex2);
                    }

                    //must have _raw_ tag for optimizations
                    if (mSavedFileName.Contains(TriggerFinalBake.sTriggerRaw) == false && TriggerFinalBake.eBuildMode.NoOptimizations != mode)
                    {
                        CoreGlobals.ShowMessage("filename not compatible with optimizations.");
                        mode = TriggerFinalBake.eBuildMode.NoOptimizations;
                    }

                    if (TriggerFinalBake.eBuildMode.NoOptimizations == mode)
                    {
                        XMBProcessor.CreateXMB(mSavedFileName, false);
                    }
                    else
                    {
                        string tempFile = TriggerFinalBake.OptimizeTriggerScript(mSavedFileName, mode);
                        XMBProcessor.CreateXMB(tempFile, false);

                        //File.Copy(tempFile + ".xmb", mSavedFileName + ".xmb", true);
                    }
                }
                else
                {
                    SaveAs();
                }
            }
            catch (System.Exception ex)
            {
                CoreGlobals.getErrorManager().OnException(ex);
            }
        }