Ejemplo n.º 1
0
    public override void SetUpValues(Type ValueType, VariableViewerNetworking.NetFriendlyPage Page = null, VariableViewerNetworking.NetFriendlySentence Sentence = null, bool Iskey = false)
    {
        base.SetUpValues(ValueType, Page, Sentence, Iskey);
        string Variable = VVUIElementHandler.ReturnCorrectString(Page, Sentence, Iskey);

        TDropdown.ClearOptions();
        TDropdown.captionText.text = Variable;
        var           values   = Enum.GetValues(ValueType);
        List <string> llist    = new List <string>();
        int           Count    = 0;
        int           Selected = 0;

        foreach (var st in values)
        {
            if (st.ToString() == Variable)
            {
                Selected = Count;
            }
            llist.Add(st.ToString());
            Count++;
        }
        TDropdown.AddOptions(llist);
        TDropdown.value = Selected;
        TDropdown.onValueChanged.AddListener(ToggleValueChanged);
    }
Ejemplo n.º 2
0
        public override void SetUpValues(
            Type ValueType, VariableViewerNetworking.NetFriendlyPage Page = null,
            VariableViewerNetworking.NetFriendlySentence Sentence         = null, bool Iskey = false)
        {
            var name = VVUIElementHandler.ReturnCorrectString(Page, Sentence, Iskey);

            if (name.Length > 50)
            {
                name = name.Substring(0, 50);
            }
            TText.text = name;
            if (Page != null)
            {
                PageID     = Page.ID;
                SentenceID = 0;
                IsSentence = false;
                iskey      = false;
            }
            else
            {
                PageID     = Sentence.OnPageID;
                SentenceID = Sentence.SentenceID;
                IsSentence = true;
                iskey      = Iskey;
            }
        }
Ejemplo n.º 3
0
 public override void SetUpValues(
     Type ValueType, VariableViewerNetworking.NetFriendlyPage Page = null,
     VariableViewerNetworking.NetFriendlySentence Sentence         = null, bool Iskey = false)
 {
     base.SetUpValues(ValueType, Page, Sentence, Iskey);
     TInputField.text = VVUIElementHandler.ReturnCorrectString(Page, Sentence, Iskey);
     TInputField.onEndEdit.AddListener(ToggleValueChanged);
 }
 public void ValueSetUp()
 {
     VVUIElementHandler.ProcessElement(DynamicSizePanel, Sentence: Sentence, iskey: false);
     if (Sentence.KeyVariableType != "")
     {
         VVUIElementHandler.ProcessElement(DynamicSizePanel, Sentence: Sentence, iskey: true);
     }
 }
Ejemplo n.º 5
0
 public override void SetUpValues(Type ValueType, VariableViewerNetworking.NetFriendlyPage Page = null, VariableViewerNetworking.NetFriendlySentence Sentence = null, bool Iskey = false)
 {
     TToggle.isOn = bool.Parse(VVUIElementHandler.ReturnCorrectString(Page, Sentence, Iskey));
     TToggle.onValueChanged.AddListener(delegate
     {
         ToggleValueChanged(TToggle);
     });
     base.SetUpValues(ValueType, Page, Sentence, Iskey);
 }
Ejemplo n.º 6
0
    public override void SetUpValues(Type ValueType,
                                     VariableViewerNetworking.NetFriendlyPage Page         = null,
                                     VariableViewerNetworking.NetFriendlySentence Sentence = null,
                                     bool Iskey = false)
    {
        int   col   = 6;
        float Dcol  = 6;
        float DCcol = 6.6f;

        if (Page != null)
        {
            PageID     = Page.ID;
            SentenceID = 0;
            IsSentence = false;
            iskey      = false;
        }
        else
        {
            PageID     = Sentence.OnPageID;
            SentenceID = Sentence.SentenceID;
            IsSentence = true;
            iskey      = Iskey;
        }

        var Data = VVUIElementHandler.ReturnCorrectString(Page, Sentence, Iskey);

        if (CountStringOccurrences(Data, ",") > 1)
        {
            if (Data.Contains("#"))
            {
                IsThisVector = Vector.Vector3Int;
            }
            else
            {
                IsThisVector = Vector.Vector3;
            }
        }
        else
        {
            if (Data.Contains("#"))
            {
                IsThisVector = Vector.Vector2Int;
            }
            else
            {
                IsThisVector = Vector.Vector2;
            }
        }
        DeSerialise(Data, true);
    }
Ejemplo n.º 7
0
        public void ValueSetUp()
        {
            if (Page.CanWrite)
            {
                switch (Page.VVHighlight)
                {
                case VVHighlight.None:
                    TypeImage.color = Color.gray;
                    break;

                case VVHighlight.SafeToModify:
                    TypeImage.color = Color.cyan;
                    break;

                case VVHighlight.SafeToModify100:
                    TypeImage.color = Color.green;
                    break;

                case VVHighlight.UnsafeToModify:
                    TypeImage.color = new Color(1, 0.498039f, 0);
                    break;

                case VVHighlight.VariableChangeUpdate:
                    TypeImage.color = Color.yellow;
                    break;

                case VVHighlight.DEBUG:
                    TypeImage.color = Color.red;
                    break;
                }
            }
            else
            {
                TypeImage.color = Color.blue;
            }

            //Activate function

            //FunctionButton
            if (Page.VariableType == null)
            {
                FunctionButton.gameObject.SetActive(true);
            }
            else
            {
                FunctionButton.gameObject.SetActive(false);
            }

            VVUIElementHandler.ProcessElement(DynamicSizePanel, _Page);
        }
    public static NetFriendlyBook ProcessBook(Librarian.Book _book)
    {
        string Classe;

        Classe = _book.BookClass.GetType().Name;
        NetFriendlyBook Book = new NetFriendlyBook()
        {
            ID            = _book.ID,
            BookClassname = Classe,
            Title         = _book.Title,
            UnGenerated   = _book.UnGenerated
        };

        List <NetFriendlyPage> ListPages = new List <NetFriendlyPage>();

        foreach (var bob in _book.GetBindedPages())
        {
            List <NetFriendlySentence> Sentences = new List <NetFriendlySentence>();
            NetFriendlyPage            Page      = new NetFriendlyPage
            {
                ID           = bob.ID,
                Variable     = VVUIElementHandler.Serialise(bob.Variable, bob.VariableType),
                VariableName = bob.VariableName,
                VariableType = bob.VariableType.ToString()
            };
            if (Librarian.UEGetType(Page.VariableType) == null)
            {
                Page.VariableType = bob.VariableType.AssemblyQualifiedName;
            }
            if (bob.Sentences.Sentences != null && (bob.Sentences.Sentences.Count > 0))
            {
                NetFriendlySentence FriendlySentence = new NetFriendlySentence()
                {
                    HeldBySentenceID = bob.Sentences.SentenceID
                };
                FriendlySentence.OnPageID = 8888888;
                Sentences.Add(FriendlySentence);
                RecursiveSentencePopulate(bob.Sentences, Sentences);
            }
            Page.Sentences = Sentences.ToArray();
            ListPages.Add(Page);
        }
        Book.BindedPages = ListPages.ToArray();

        return(Book);
    }
    public static void RecursiveSentencePopulate(Librarian.Sentence LibrarianSentence, List <NetFriendlySentence> Sentences)
    {
        if (LibrarianSentence.Sentences != null)
        {
            foreach (var _Sentence in LibrarianSentence.Sentences)
            {
                NetFriendlySentence FriendlySentence = new NetFriendlySentence()
                {
                    PagePosition = _Sentence.PagePosition,
                    SentenceID   = _Sentence.SentenceID,

                    ValueVariable     = VVUIElementHandler.Serialise(_Sentence.ValueVariable, _Sentence.ValueVariableType),
                    ValueVariableType = _Sentence.ValueVariableType.ToString(),
                    OnPageID          = _Sentence.OnPageID,
                    HeldBySentenceID  = LibrarianSentence.SentenceID
                };
                if (Librarian.UEGetType(FriendlySentence.ValueVariableType) == null)
                {
                    FriendlySentence.ValueVariableType = _Sentence.ValueVariableType.AssemblyQualifiedName;
                }
                if (_Sentence.KeyVariable != null)
                {
                    FriendlySentence.KeyVariable =
                        VVUIElementHandler.Serialise(_Sentence.KeyVariable, _Sentence.KeyVariableType);
                    FriendlySentence.KeyVariableType = _Sentence.KeyVariableType.ToString();
                    if ((FriendlySentence.KeyVariableType == null) || (Librarian.UEGetType(FriendlySentence.KeyVariableType) == null))
                    {
                        FriendlySentence.KeyVariableType = _Sentence.KeyVariableType.AssemblyQualifiedName;
                    }
                }


                if (_Sentence.Sentences != null)
                {
                    RecursiveSentencePopulate(_Sentence, Sentences);
                }

                Sentences.Add(FriendlySentence);
            }
        }
    }
Ejemplo n.º 10
0
 public static void RequestChangeVariable(ulong PageID, string ChangeTo, bool SendToClient, GameObject WhoBy, string AdminId)
 {
     if (Librarian.IDToPage.ContainsKey(PageID))
     {
         UIManager.Instance.adminChatWindows.adminToAdminChat.ServerAddChatRecord(
             WhoBy.name + " Modified " + Librarian.IDToPage[PageID].VariableName + " on " + Librarian.IDToPage[PageID].BindedTo.Title
             + " From " + VVUIElementHandler.Serialise(Librarian.IDToPage[PageID].Variable, Librarian.IDToPage[PageID].VariableType) + " to " + ChangeTo
             + " with Send to clients? " + SendToClient, AdminId);
         Librarian.PageSetValue(Librarian.IDToPage[PageID], ChangeTo);
         if (SendToClient)
         {
             var monoBehaviour = (Librarian.IDToPage[PageID].BindedTo.BookClass as Component);
             UpdateClientValue.Send(ChangeTo, Librarian.IDToPage[PageID].VariableName,
                                    TypeDescriptor.GetClassName(monoBehaviour),
                                    monoBehaviour.gameObject);
         }
     }
     else
     {
         Logger.LogError("Page ID has not been generated Page ID > " + PageID, Category.VariableViewer);
     }
 }
Ejemplo n.º 11
0
    public override void SetUpValues(Type ValueType,
                                     VariableViewerNetworking.NetFriendlyPage Page         = null,
                                     VariableViewerNetworking.NetFriendlySentence Sentence = null,
                                     bool Iskey = false)
    {
        if (Page != null)
        {
            PageID     = Page.ID;
            SentenceID = 0;
            IsSentence = false;
            iskey      = false;
        }
        else
        {
            PageID     = Sentence.OnPageID;
            SentenceID = Sentence.SentenceID;
            IsSentence = true;
            iskey      = Iskey;
        }

        var Data = VVUIElementHandler.ReturnCorrectString(Page, Sentence, Iskey);

        DeSerialise(Data, true);
    }
Ejemplo n.º 12
0
    public void Pool()
    {
        ID                = 0;
        Title             = "Title";
        PresentPagesCount = 0;
        RightArrow.SetActive(false);
        LeftArrow.SetActive(false);
        VVUIElementHandler.Pool();
        foreach (var ListOfPages in PagesInBook)
        {
            foreach (var Page in ListOfPages)
            {
                PoolPageEntry(Page);
            }
        }
        foreach (var Page in CurrentlyOpen)
        {
            PoolPageEntry(Page);
        }

        PagesInBook.Clear();
        PagesInBook.Add(new List <GUI_PageEntry>());
        CurrentlyOpen.Clear();
    }
Ejemplo n.º 13
0
    public void ReceiveBook(VariableViewerNetworking.NetFriendlyBook Book)
    {
        ID                = Book.ID;
        Title             = Book.Title;
        PresentPagesCount = 0;
        RightArrow.SetActive(false);
        LeftArrow.SetActive(false);
        VVUIElementHandler.Pool();
        foreach (var ListOfPages in PagesInBook)
        {
            foreach (var Page in ListOfPages)
            {
                PoolPageEntry(Page);
            }
        }
        foreach (var Page in CurrentlyOpen)
        {
            PoolPageEntry(Page);
        }

        PagesInBook.Clear();
        PagesInBook.Add(new List <GUI_PageEntry>());
        CurrentlyOpen.Clear();
        CurrentlyOpenBook = Book;

        if (History.Count > 0)
        {
            HistoryBackwards.SetActive(true);
        }
        if (!NotModifyingHistory)
        {
            if ((History.Count - 1) != HistoryLocation)
            {
                ListExtensions.RemoveAtIndexForwards(History, HistoryLocation);
            }
            History.Add(Book.ID);
            HistoryLocation = HistoryLocation + 1;
        }
        NotModifyingHistory = false;

        if (HistoryLocation < 1)
        {
            HistoryBackwards.SetActive(false);
        }
        else
        {
            HistoryBackwards.SetActive(true);
        }

        if (HistoryLocation + 1 < History.Count)
        {
            HistoryForward.SetActive(true);
        }
        else
        {
            HistoryForward.SetActive(false);
        }

        foreach (var page in CurrentlyOpenBook.BindedPages)
        {
            GUI_PageEntry PageEntry;
            if (PooledPages.Count > 0)
            {
                PageEntry = PooledPages[0];
                PooledPages.RemoveAt(0);
                PageEntry.gameObject.SetActive(true);
                PageEntry.transform.SetParent(PagePanel.transform, true);
            }
            else
            {
                PageEntry = Instantiate(PageEntryPrefab) as GUI_PageEntry;
                PageEntry.transform.SetParent(PagePanel.transform, true);
                PageEntry.transform.localScale = Vector3.one;
            }

            PageEntry.Page = page;
            //Logger.Log(JsonConvert.SerializeObject(page));
            if (PresentPagesCount > MaximumPerTwoPages)
            {
                PageEntry.gameObject.SetActive(false);
                int PageSetNumber = (int)Math.Floor((decimal)(PresentPagesCount / MaximumPerTwoPages));

                if ((PagesInBook.Count - 1) != PageSetNumber)
                {
                    PagesInBook.Add(new List <GUI_PageEntry>());
                }
                PagesInBook[PageSetNumber].Add(PageEntry);
            }
            else
            {
                PagesInBook[0].Add(PageEntry);
            }
            PresentPagesCount++;
        }
        CurrentlyOpen    = PagesInBook[0];
        intCurrentlyOpen = 0;
        if (PagesInBook.Count > 1)
        {
            RightArrow.SetActive(true);
        }
    }
Ejemplo n.º 14
0
 public override void SetUpValues(Type ValueType, VariableViewerNetworking.NetFriendlyPage Page = null, VariableViewerNetworking.NetFriendlySentence Sentence = null, bool Iskey = false)
 {
     TToggle.isOn = bool.Parse(VVUIElementHandler.ReturnCorrectString(Page, Sentence, Iskey));
 }
Ejemplo n.º 15
0
 public void ValueSetUp()
 {
     VVUIElementHandler.ProcessElement(DynamicSizePanel, _Page);
 }
Ejemplo n.º 16
0
 public override void SetUpValues(Type ValueType, VariableViewerNetworking.NetFriendlyPage Page = null, VariableViewerNetworking.NetFriendlySentence Sentence = null, bool Iskey = false)
 {
     TInputField.text = VVUIElementHandler.ReturnCorrectString(Page, Sentence, Iskey);
 }
    public static NetFriendlyBook ProcessBook(Librarian.Book _book)
    {
        string Classe;

        Classe = _book.BookClass.GetType().Name;
        NetFriendlyBook Book = new NetFriendlyBook()
        {
            ID            = _book.ID,
            BookClassname = Classe,
            Title         = _book.Title,
            UnGenerated   = _book.UnGenerated
        };

        // get max possible packet size from current transform
        int maxPacketSize = Mirror.Transport.activeTransport.GetMaxPacketSize(0);
        // set currentSize start value to max TCP header size (60b)
        int currentSize = 60;

        List <NetFriendlyPage> ListPages = new List <NetFriendlyPage>();

        foreach (var bob in _book.GetBindedPages())
        {
            List <NetFriendlySentence> Sentences = new List <NetFriendlySentence>();
            NetFriendlyPage            Page      = new NetFriendlyPage
            {
                ID           = bob.ID,
                Variable     = VVUIElementHandler.Serialise(bob.Variable, bob.VariableType),
                VariableName = bob.VariableName,
                VariableType = bob.VariableType?.ToString(),
                VVHighlight  = bob.VVHighlight
            };
            if (bob.PInfo != null)
            {
                Page.CanWrite = bob.PCanWrite;
            }



            if (Librarian.UEGetType(Page.VariableType) == null)
            {
                Page.VariableType = bob?.VariableType?.AssemblyQualifiedName;
            }
            if (bob.Sentences.Sentences != null && (bob.Sentences.Sentences.Count > 0))
            {
                NetFriendlySentence FriendlySentence = new NetFriendlySentence()
                {
                    HeldBySentenceID = bob.Sentences.SentenceID
                };
                FriendlySentence.OnPageID = 8888888;
                Sentences.Add(FriendlySentence);
                RecursiveSentencePopulate(bob.Sentences, Sentences);
            }
            Page.Sentences = Sentences.ToArray();

            //currentSize += Page.GetSize(); //TODO work out why this causes errors


            // if currentSize is greater than the maxPacketSize - break loop and send message
            if (currentSize > maxPacketSize)
            {
                Logger.LogError("[VariableViewerNetworking.ProcessBook] - message is to big to send in one packet", Category.VariableViewer);
                break;
            }

            ListPages.Add(Page);
        }
        Book.BindedPages = ListPages.ToArray();

        return(Book);
    }
Ejemplo n.º 18
0
 void IInitialise.Initialise()
 {
     VVUIElementHandler.ReSet();
     VVUIElementHandler.VariableViewerManager = this;
     VVUIElementHandler.Initialise(AvailableElementsToInitialise);
 }
Ejemplo n.º 19
0
 void Start()
 {
     VVUIElementHandler.VariableViewerManager = this;
     VVUIElementHandler.initialise(AvailableElementsToInitialise);
 }