Example #1
0
 public void SetSelection(ConstructionUI.PartDesc targetObject)
 {
     if (WPFMonoBehaviour.levelManager.gameState != LevelManager.GameState.AutoBuilding)
     {
         this.m_scrollList.SetSelection(targetObject);
     }
 }
Example #2
0
 private void CreateTestPartList()
 {
     this.m_partDescs = new List <ConstructionUI.PartDesc>();
     foreach (GameObject gameObject in this.m_gameData.m_parts)
     {
         ConstructionUI.PartDesc partDesc = new ConstructionUI.PartDesc();
         partDesc.part     = gameObject.GetComponent <BasePart>();
         partDesc.sortKey  = this.m_partOrder[gameObject.GetComponent <BasePart>().m_partType];
         partDesc.maxCount = UnityEngine.Random.Range(0, 20);
         this.m_partDescs.Add(partDesc);
     }
     this.m_partDescs.Sort(new PartSelector.PartDescOrder(WPFMonoBehaviour.gameData));
     this.CreatePartList(true);
 }
Example #3
0
 public void BuildContraption(ContraptionDataset cds)
 {
     if (cds == null || cds.ContraptionDatasetList == null)
     {
         return;
     }
     foreach (ContraptionDataset.ContraptionDatasetUnit contraptionDatasetUnit in cds.ContraptionDatasetList)
     {
         ConstructionUI.PartDesc partDesc = this.levelManager.ConstructionUI.FindPartDesc((BasePart.PartType)contraptionDatasetUnit.partType);
         if (partDesc != null)
         {
             BasePart customPart = this.gameData.GetCustomPart(partDesc.part.m_partType, contraptionDatasetUnit.customPartIndex);
             if (customPart != null)
             {
                 this.levelManager.BuildPart(contraptionDatasetUnit, customPart);
                 partDesc.useCount++;
             }
         }
     }
 }
Example #4
0
    private void SetupTutorial()
    {
        this.m_playing = true;
        InGameGUI inGameGUI = WPFMonoBehaviour.levelManager.InGameGUI;

        this.m_partselector   = inGameGUI.BuildMenu.PartSelector;
        this.m_constructionUI = WPFMonoBehaviour.levelManager.ConstructionUI;
        GameObject tutorialButton = inGameGUI.BuildMenu.TutorialButton;
        GameObject playButton     = inGameGUI.BuildMenu.PlayButton;

        if (this.m_constructionUI == null)
        {
            return;
        }
        this.m_tutorialTimeline = new PointerTimeLine(this.m_pointer);
        List <Vector3> list = new List <Vector3>();

        list.Add(tutorialButton.transform.position + 21f * Vector3.down);
        list.Add(tutorialButton.transform.position);
        this.m_tutorialTimeline.AddEvent(new PointerTimeLine.Wait(0.1f));
        this.m_tutorialTimeline.AddEvent(new PointerTimeLine.Move(list, 2.5f));
        this.m_tutorialTimeline.AddEvent(new PointerTimeLine.Press());
        this.m_tutorialTimeline.AddEvent(new PointerTimeLine.Wait(0.5f));
        this.m_tutorialTimeline.AddEvent(new PointerTimeLine.Release());
        this.m_tutorialTimeline.AddEvent(new PointerTimeLine.Wait(0.75f));
        this.m_tutorialTimeline.AddEvent(new PointerTimeLine.Hide());
        this.m_dragPartTimeline = new PointerTimeLine(this.m_pointer);
        ConstructionUI.PartDesc partDesc = this.m_constructionUI.FindPartDesc(BasePart.PartType.WoodenFrame);
        GameObject     gameObject        = this.m_partselector.FindPartButton(partDesc);
        Vector3        position          = gameObject.transform.position;
        Vector3        vector            = this.m_constructionUI.GridPositionToGuiPosition(this.m_dragTargetX, this.m_dragTargetY);
        List <Vector3> list2             = new List <Vector3>();

        list2.Add(position + 3f * Vector3.down + 1f * Vector3.left);
        list2.Add(position);
        this.m_dragPartTimeline.AddEvent(new PointerTimeLine.Move(list2, 1.5f));
        List <Vector3> list3 = new List <Vector3>();

        list3.Add(position);
        list3.Add(0.5f * (position + vector) + 0.5f * Vector3.left);
        list3.Add(vector);
        this.m_dragPartTimeline.AddEvent(new PointerTimeLine.Press());
        this.m_dragPartTimeline.AddEvent(new PointerTimeLine.Wait(0.5f));
        this.m_dragPartTimeline.AddEvent(new PointerTimeLine.Move(list3, 1.75f));
        this.m_dragPartTimeline.AddEvent(new PointerTimeLine.Wait(0.2f));
        this.m_dragPartTimeline.AddEvent(new PointerTimeLine.Release());
        this.m_dragPartTimeline.AddEvent(new PointerTimeLine.Wait(0.5f));
        this.m_dragPartTimeline.AddEvent(new PointerTimeLine.Hide());
        this.m_dragPartTimeline.AddEvent(new PointerTimeLine.Wait(2f));
        ConstructionUI.PartDesc partDesc2 = this.m_constructionUI.FindPartDesc(BasePart.PartType.Pig);
        GameObject gameObject2            = this.m_partselector.FindPartButton(partDesc2);
        Vector3    position2 = gameObject2.transform.position;
        Vector3    vector2   = this.m_constructionUI.GridPositionToGuiPosition(this.m_pigTargetX, this.m_pigTargetY);

        this.m_dragPigTimeline = new PointerTimeLine(this.m_pointer);
        List <Vector3> list4 = new List <Vector3>();

        list4.Add(position2 + 3f * Vector3.down + 1f * Vector3.left);
        list4.Add(position2);
        this.m_dragPigTimeline.AddEvent(new PointerTimeLine.Move(list4, 1.5f));
        List <Vector3> list5 = new List <Vector3>();

        list5.Add(position2);
        list5.Add(0.5f * (position2 + vector2) + 0.5f * Vector3.left);
        list5.Add(vector2);
        this.m_dragPigTimeline.AddEvent(new PointerTimeLine.Press());
        this.m_dragPigTimeline.AddEvent(new PointerTimeLine.Wait(0.5f));
        this.m_dragPigTimeline.AddEvent(new PointerTimeLine.Move(list5, 1.75f));
        this.m_dragPigTimeline.AddEvent(new PointerTimeLine.Wait(0.2f));
        this.m_dragPigTimeline.AddEvent(new PointerTimeLine.Release());
        this.m_dragPigTimeline.AddEvent(new PointerTimeLine.Wait(0.5f));
        this.m_dragPigTimeline.AddEvent(new PointerTimeLine.Hide());
        this.m_dragPigTimeline.AddEvent(new PointerTimeLine.Wait(2f));
        this.m_startContraptionTimeline = new PointerTimeLine(this.m_pointer);
        List <Vector3> list6 = new List <Vector3>();

        list6.Add(playButton.transform.position + 11f * Vector3.down);
        list6.Add(playButton.transform.position + 5.5f * Vector3.down + 0.5f * Vector3.left);
        list6.Add(playButton.transform.position);
        this.m_startContraptionTimeline.AddEvent(new PointerTimeLine.Wait(1f));
        this.m_startContraptionTimeline.AddEvent(new PointerTimeLine.Move(list6, 2f));
        this.m_startContraptionTimeline.AddEvent(new PointerTimeLine.Press());
        this.m_startContraptionTimeline.AddEvent(new PointerTimeLine.Wait(0.5f));
        this.m_startContraptionTimeline.AddEvent(new PointerTimeLine.Release());
        this.m_startContraptionTimeline.AddEvent(new PointerTimeLine.Wait(0.75f));
        this.m_startContraptionTimeline.AddEvent(new PointerTimeLine.Hide());
        if (!this.m_tutorialBookOpened)
        {
            this.m_state    = Tutorial.State.OpenBook;
            this.m_timeline = this.m_tutorialTimeline;
            this.m_timeline.Start();
        }
        else if (WPFMonoBehaviour.levelManager.ContraptionProto.Parts.Count == 0)
        {
            this.m_state    = Tutorial.State.DragPart;
            this.m_timeline = this.m_dragPartTimeline;
            this.m_timeline.Start();
        }
        else if (!this.m_contraptionStarted)
        {
            this.m_state    = Tutorial.State.StartContraption;
            this.m_timeline = this.m_startContraptionTimeline;
            this.m_timeline.Start();
        }
        else
        {
            this.m_playing = false;
        }
        this.m_setupCompleted = true;
    }
Example #5
0
 public GameObject FindPartButton(ConstructionUI.PartDesc partDesc)
 {
     return(this.m_scrollList.FindButton(partDesc));
 }