Ejemplo n.º 1
0
    // Start is called before the first frame update
    void Start()
    {
        if (!tutorial)
        {
            tutorial = GameObject.FindObjectOfType <ITutorial>();
            if (!tutorial)
            {
                Debug.LogWarning("Tutorial Master: Could not find an instance of ITutorial!");
            }
        }

        if (triggerSlideTransitionEvent == null)
        {
            triggerSlideTransitionEvent = new TutorialStateEvent();
        }
        if (setTutorialState == null)
        {
            setTutorialState = new TutorialStateEvent();
        }

        tutorialState = 0;

        leftHand  = GameObject.Find("DistanceGrabHandLeft").GetComponent <OVRGrabber>();
        rightHand = GameObject.Find("DistanceGrabHandRight").GetComponent <OVRGrabber>();
        if (!leftHand || !rightHand)
        {
            Debug.LogError("Tutorial Master: Could not find both OVRGrabber hands!");
        }
    }
Ejemplo n.º 2
0
 public AreaForm(ITutorial tutorial)
 {
     InitializeComponent();
     _tutorial = tutorial;
     Text      = tutorial.Caption;
     if (OptionsForm.ConnectToDocumentation)
     {
         tabControl1.TabPages.Remove(OfflineTabPage);
         webBrowserTutorialContent.Url = new Uri(tutorial.Uri);
         WindowState = FormWindowState.Maximized;
     }
     else
     {
         tabControl1.TabPages.Remove(OnlineTabPage);
         linkLabelTutorialContent.Text = tutorial.Uri;
     }
     if (null != tutorial.Panel)
     {
         tabControl1.TabPages.Remove(SampleTabPage);
         AreaTabPage.Controls.Add(tutorial.Panel);
         tutorial.Panel.Dock = DockStyle.Fill;
     }
     else
     {
         tabControl1.TabPages.Remove(AreaTabPage);
     }
 }
Ejemplo n.º 3
0
        public static void ShowForm(IWin32Window owner, ITutorial tutorial)
        {
            AreaForm form = new AreaForm(tutorial);

            form.ShowDialog(owner);
            form.DoDispose();
            tutorial.Disconnect();
        }
Ejemplo n.º 4
0
 /// <summary>
 /// Registers a tutorial frontend to the backend.
 /// </summary>
 /// <param name="tut"></param>
 public static void RegisterTutorial(ITutorial tut)
 {
     IsInTutorial     = false;
     _tut             = tut;
     _tut.OnComplete += (o, a) =>
     {
         SaveSystem.CurrentSave.StoryPosition = 2;
         IsInTutorial = false;
     };
 }
Ejemplo n.º 5
0
        public void AddTutorial(string name, ITutorial tutorial)
        {
            if (Tutorials.ContainsKey(name))
            {
                return;
            }
            Tutorials.Add(name, tutorial);

            tutorial.Triggered += () => OnTutorialTriggered(name);
        }
Ejemplo n.º 6
0
        protected internal void LoadTutorial(ITutorial tutorial)
        {
            tutorial.Connect(this);
            ListViewItem viewItem = listViewTutorials.Items.Add(tutorial.Caption);

            viewItem.ImageIndex = 0;
            viewItem.Tag        = tutorial;
            _listTutorials.Add(tutorial);
            if (null != tutorial.Panel)
            {
                tutorial.Panel.Visible = false;
                panelTutorialArea.Controls.Add(tutorial.Panel);
                tutorial.Panel.Dock = DockStyle.Fill;
            }
        }
Ejemplo n.º 7
0
 private void buttonRunTutorial_Click(object sender, EventArgs e)
 {
     try
     {
         buttonRunTutorial.Enabled = false;
         if (listViewTutorials.SelectedItems.Count > 0)
         {
             ITutorial selectedTutorial = listViewTutorials.SelectedItems[0].Tag as ITutorial;
             selectedTutorial.Run();
         }
     }
     catch (Exception exception)
     {
         FormError.Show(this, null, exception.Message, exception);
     }
     finally
     {
         buttonRunTutorial.Enabled = true;
     }
 }
Ejemplo n.º 8
0
        private void listViewTutorials_SelectedIndexChanged(object sender, EventArgs e)
        {
            try
            {
                if ((panelTutorialArea.Controls.Count == 0) || (listViewTutorials.SelectedItems.Count == 0))
                {
                    return;
                }

                foreach (Control item in panelTutorialArea.Controls)
                {
                    item.Visible = false;
                }
                ITutorial selectedTutorial = listViewTutorials.SelectedItems[0].Tag as ITutorial;

                if (null != selectedTutorial.Panel)
                {
                    selectedTutorial.Panel.Visible = true;
                }
                else
                {
                    buttonRunTutorial.Visible = true;
                }

                labelTutorialDescription.Text = selectedTutorial.Description;
                if (FormOptions.ConnectToDocumentation)
                {
                    webBrowserTutorialContent.Navigate(new Uri((listViewTutorials.SelectedItems[0].Tag as ITutorial).Uri));
                }
                else
                {
                    linkLabelTutorialContent.Tag  = selectedTutorial.Uri;
                    linkLabelTutorialContent.Text = selectedTutorial.Uri;
                }
            }
            catch (Exception exception)
            {
                FormError.Show(this, null, exception.Message, exception);
            }
        }
Ejemplo n.º 9
0
        private void ApplyConfiguration()
        {
            if (FormOptions.ConnectToDocumentation)
            {
                webBrowserTutorialContent.Visible = true;
                panelShowTutorialLink.Visible     = false;
            }
            else
            {
                webBrowserTutorialContent.Visible = false;
                panelShowTutorialLink.Visible     = true;
            }

            foreach (ListViewItem item in listViewTutorials.Items)
            {
                ITutorial example = item.Tag as ITutorial;
                item.Text = example.Caption;
            }

            if (listViewTutorials.SelectedItems.Count > 0)
            {
                ITutorial selectedTutorial = listViewTutorials.SelectedItems[0].Tag as ITutorial;

                labelTutorialDescription.Text = selectedTutorial.Description;

                if (FormOptions.ConnectToDocumentation)
                {
                    webBrowserTutorialContent.Navigate(new Uri(selectedTutorial.Uri));
                }
                else
                {
                    linkLabelTutorialContent.Tag  = selectedTutorial.Uri;
                    linkLabelTutorialContent.Text = selectedTutorial.Uri;
                }
            }

            Translator.TranslateControls(this, "FormBase.txt");
        }
Ejemplo n.º 10
0
 protected internal void LoadTutorial(ITutorial tutorial)
 {
     tutorial.Connect(this);
     ListViewItem viewItem = listViewTutorials.Items.Add(tutorial.Caption);
     viewItem.ImageIndex = 0;
     viewItem.Tag = tutorial;
     _listTutorials.Add(tutorial);
     if (null != tutorial.Panel)
     { 
         tutorial.Panel.Visible = false;
         panelTutorialArea.Controls.Add(tutorial.Panel);
         tutorial.Panel.Dock = DockStyle.Fill;
     }
 }
Ejemplo n.º 11
0
 protected internal void LoadTutorial(ITutorial tutorial)
 {
     tutorial.Connect(this);
     Tutorials.Add(tutorial);
 }