コード例 #1
0
 private void OnEnable()
 {
     catalogueManager          = GetComponent <CatalogueManager>();
     SceneManager.sceneLoaded += OnSceneLoaded;
     _LoadContainer            = GetComponentInChildren <Transform>();
     dropboxClient             = new DropboxClient(AvoEx.AesEncryptor.DecryptString(PlayerPrefs.GetString("Token")));
 }
コード例 #2
0
 private void Start()
 {
     catalogueManager           = GameObject.FindWithTag("CatalogueManager").GetComponent <CatalogueManager>();
     tempDataPath               = Application.persistentDataPath + "/Temp/" + Guid.NewGuid().ToString() + "/";
     renderTextureImage.enabled = false;
     StartCoroutine(DoAfterLoadAnim());
 }
コード例 #3
0
 private void Awake()
 {
     catalogueManager = GameObject.FindWithTag("CatalogueManager").GetComponent <CatalogueManager>();
     tempDataPath     = Application.persistentDataPath + "/Temp/" + Guid.NewGuid().ToString() + "/";
     panelSlice.SetActive(false);
     StartCoroutine(DoAfterLoadAnim());
 }
コード例 #4
0
ファイル: ItemManager.cs プロジェクト: djdeathgirl/Jabbo
        internal void addItem(int itemID, int templateID, int X, int Y, int Z, int H, string Var)
        {
            CatalogueManager.itemTemplate Template = CatalogueManager.getTemplate(templateID);

            int Length = 0;
            int Width  = 0;

            if (Z == 2 || Z == 6)
            {
                Length = Template.Length;
                Width  = Template.Width;
            }
            else
            {
                Length = Template.Width;
                Width  = Template.Length;
            }

            for (int jX = X; jX < X + Width; jX++)
            {
                for (int jY = Y; jY < Y + Length; jY++)
                {
                    ItemStack Stack = _Room._sqStack[jX, jY];
                    if (Stack == null)
                    {
                        if (Template.typeID != 2 && Template.typeID != 3)
                        {
                            Stack = new ItemStack();
                            Stack.Add(itemID);
                        }
                    }
                    else
                    {
                        Stack.Add(itemID);
                    }

                    _Room._sqState[jX, jY] = (Room.squareState)Template.typeID;
                    if (Template.typeID == 2 || Template.typeID == 3)
                    {
                        _Room._sqItemHeight[jX, jY] = H + Template.Height;
                        _Room._sqItemRot[jX, jY]    = Convert.ToByte(Z);
                    }
                    else
                    {
                        if (Template.typeID == 4)
                        {
                            _Room._sqItemHeight[jX, jY] = H;
                        }
                    }
                    _Room._sqStack[jX, jY] = Stack;
                }
            }
            FloorItem Item = new FloorItem(itemID, templateID, X, Y, Z, H, Var);

            _Items.Add(itemID, Item);
        }
コード例 #5
0
 private void Awake()
 {
     catalogueManager  = GameObject.FindWithTag("CatalogueManager").GetComponent <CatalogueManager>();
     tempDataPath      = Application.persistentDataPath + "/Temp/" + Guid.NewGuid().ToString() + "/";
     skyboxMatSixClone = new Material(skyboxMatSix);
     skyboxMatOneClone = new Material(skyboxMatOne);
     skybox            = skyboxCamera.GetComponent <Skybox>();
     skybox.material   = skyboxTypeToggle.isOn ? skyboxMatOneClone : skyboxMatSixClone;
     InitializeSkybox();
 }
コード例 #6
0
 public GameManager()
 {
     mUserManager       = new UserManager();
     mRoleManager       = new RoleManager();
     mMessengerManager  = new MessengerManager();
     mRoomManager       = new RoomManager();
     mNavigator         = new Navigator();
     mMiscManager       = new MiscManager();
     mFurniManager      = new FurniManager();
     mModerationHandler = new ModerationHandler();
     mCatalogueManager  = new CatalogueManager();
     mExternalManager   = new ExternalManager();
 }
コード例 #7
0
    public async void DeleteAssetAsync()
    {
        if (_ItemCodeSnip._ItemID != 0)
        {
            this.GetComponent <Button>().interactable = false;
            LoadingPanelUI loadingPanelUI = GetComponentInChildren <LoadingPanelUI>(true);
            loadingPanelUI.gameObject.SetActive(true);
            loadingPanelUI.ChangeText("Please Wait", "Deleting Asset");
            _CatalogueManager = GameObject.FindWithTag("CatalogueManager").GetComponent <CatalogueManager>();
            CatalogueItemDetail thisDetail = new CatalogueItemDetail();
            foreach (CatalogueItemDetail detail in _CatalogueManager._CatalogueItemDetails)
            {
                if (detail.ItemID == this._ItemCodeSnip._ItemID)
                {
                    thisDetail = detail;
                }
            }
            _CatalogueManager._CatalogueItemDetails.Remove(thisDetail);
            _CatalogueManager.ResyncCatalogueDatabaseAsync();

            using (DropboxClient dbx = new DropboxClient(AvoEx.AesEncryptor.DecryptString(PlayerPrefs.GetString("Token"))))
            {
                await cmd_Dropbox.DeleteAssetFolderAsync(dbx, "/Assets/CodeSnips/" + thisDetail.ItemID.ToString("D5"));

                Debug.Log("LOG:" + DateTime.Now.ToString() + " - " + _ItemCodeSnip._FriendlyName + " Deleted");
            }

            foreach (CatalogueItemThumnail_CodeSnip goCodeSnip in GameObject.FindWithTag("ThumbnailGrid").GetComponentsInChildren <CatalogueItemThumnail_CodeSnip>())
            {
                if (goCodeSnip.assetID == this._ItemCodeSnip._ItemID)
                {
                    Destroy(goCodeSnip.gameObject);
                    break;
                }
            }
            loadingPanelUI.gameObject.SetActive(false);
            MessageBox.Show("Boom Shaka Laka", "Asset Now Deleted", () =>
            {
                GetComponent <PopupItemController>().HideDialog(0);
            });
            string localAssetPath = "/" + _CatalogueManager._DatabaseUID + "/Assets/CodeSnips/" + this._ItemCodeSnip._ItemID.ToString("D5") + "/";
            cmd_File.DeleteFolder(Application.persistentDataPath + localAssetPath, true);
        }
        else
        {
            GetComponent <PopupItemController>().HideDialog(0);
        }
    }
コード例 #8
0
ファイル: TDSQueriesTree.cs プロジェクト: resuarez/myzilla
        public void LoadDefaultData(string applicationPath)
        {
            _appPath = applicationPath;
            string fileName        = applicationPath + Path.DirectorySeparatorChar + _fileName;
            string defaultFileName = Application.StartupPath + Path.DirectorySeparatorChar + _defaultFileName;

            try
            {
                if (File.Exists(fileName))
                {
                    _instance.ReadXml(fileName);
                }
                //if QueriesTree does not exist in the windows user application data folder
                //load the default values from the application folder
                else if (File.Exists(defaultFileName))
                {
                    TDSQueriesTree t = new TDSQueriesTree();
                    t.ReadXml(defaultFileName);
                    _instance.QueryTypes.Merge(t.QueryTypes);
                    _instance.QueryParameters.Merge(t.QueryParameters);

                    MyZillaSettingsDataSet         settings    = MyZillaSettingsDataSet.GetInstance();
                    TDSettings.ConnectionDataTable connections = settings.GetActiveConnections();

                    foreach (TDSettings.ConnectionRow connection  in connections)
                    {
                        CatalogueManager catalogues = CatalogueManager.Instance();
                        if (catalogues.GetCataloguesForConnection(connection.ConnectionId) != null)
                        {
                            BuildTreeStructureForUserId(t, connection);
                        }
                    }
                }
                else
                {
                    throw (new IOException("Default queries configuration [" + fileName + "] is missing!"));
                }
            }
            catch (IOException)
            {
                throw (new IOException("File " + fileName + " not exist."));
            }
        }
コード例 #9
0
 private void Start()
 {
     catalogueManager = GameObject.FindWithTag("CatalogueManager").GetComponent <CatalogueManager>();
     LoadAssetCounts();
     LoadStorageCountAsync();
 }
コード例 #10
0
ファイル: TDSQueriesTree.cs プロジェクト: resuarez/myzilla
        public void AddUserSubtree(TreeView treeView, TDSettings.ConnectionRow connectionRow)
        {
            DataRow[] rows;
            TreeNode  nodeUser;

            //find the node in the tree corresponding to the user-connection
            TreeNode[] nodesUser = treeView.Nodes.Find("User " + connectionRow.ConnectionId.ToString(), true);

            if (nodesUser.GetLength(0) == 1)
            {
                nodeUser = nodesUser[0];

                //find all folders of the user and sort them on LevelID
                rows = _instance.Folders.Select("UserID = " + Int16.Parse(nodeUser.Name.Replace("User", String.Empty)).ToString(), "LevelID, Name, ID, ParentID");
                TreeNode node = new TreeNode();

                if (rows.GetLength(0) == 0)
                {
                    nodeUser.ForeColor = System.Drawing.Color.Gray;
                }

                //check if product list changed on the server
                CatalogueManager    catalogues = CatalogueManager.Instance();
                NameValueCollection products   = catalogues.GetCataloguesForConnection(connectionRow.ConnectionId).catalogueProduct;



                string     productName        = String.Empty;
                FoldersRow productsRootFolder = GetFolderByName(connectionRow, "Product Queries");

                if (productsRootFolder == null)
                {
                    productsRootFolder = CreateFolder(connectionRow, "Product Queries", 0, -1);
                }

                //check if local user xml still contains deleted products
                // if contains one, delete it
                for (int i = rows.GetLength(0) - 1; i >= 0; i--)
                {
                    FoldersRow folder = (FoldersRow)rows[i];
                    if ((folder.ParentID == productsRootFolder.ID) && (products[folder.Name + "," + folder.Name] == null))
                    {
                        folder.Delete();
                    }
                }

                //check if new product is missing from the local user structure
                for (int i = 0; i < products.Count; i++)
                {
                    productName = products.GetKey(i).Split(',')[1];
                    FoldersRow productFolder = GetFolderByName(connectionRow, productName);

                    if (productFolder == null)
                    {
                        CreateProductFolderDefaultQueries(connectionRow, productsRootFolder.ID, productName);
                    }
                }

                rows = _instance.Folders.Select("UserID = " + Int16.Parse(nodeUser.Name.Replace("User", String.Empty)).ToString(), "LevelID, Name, ID, ParentID");

                //add each folder(except deleted ones) as a TreeNode in the TreeView
                foreach (DataRow dr in rows)
                {
                    FoldersRow folder = (FoldersRow)dr;

                    //protect agains folders that do not have the Deleted tag (protect agains null value)
                    try
                    {
                        folder.Deleted = folder.Deleted;
                    }
                    catch {
                        folder.Deleted = false;
                    }


                    if (!folder.Deleted)
                    {
                        if (folder.ParentID == -1)
                        {
                            node = nodeUser.Nodes.Add("folder " + folder.ID.ToString(), folder.Name, "Folder");
                        }
                        else
                        {
                            FoldersRow parentFolder = _instance.Folders.FindByID(folder.ParentID);

                            if (parentFolder.Deleted)
                            {
                                folder.Deleted = true;
                            }

                            TreeNode[] nodes = nodeUser.Nodes.Find("folder " + folder.ParentID.ToString(), true);

                            if (nodes.GetLength(0) == 1)
                            {
                                node = nodes[0].Nodes.Add("folder " + folder.ID.ToString(), folder.Name, "Folder");
                            }
                        }

                        if (!folder.Deleted)
                        {
                            node.SelectedImageKey = "Folder";
                            node.Tag = new NodeDescription(NodeType.Folder, folder);

                            //add queries associated with the folder as tree nodes
                            DataRow[] queries = _instance.Queries.Select("FolderId = " + folder.ID);
                            foreach (DataRow query in queries)
                            {
                                QueriesRow queryRow = (QueriesRow)query;

                                AddQueryToTreeNode(node, queryRow);
                            }
                        }
                    }
                }
            }
        }
コード例 #11
0
ファイル: TDSQueriesTree.cs プロジェクト: resuarez/myzilla
        /// <summary>
        /// Checks for the predefined folder structure and build it together with the predefined queries
        /// </summary>
        /// <param name="Connection"></param>
        public static void RefreshTreePerUser(TDSettings.ConnectionRow connectionRow)
        {
            int parentID;

            DataRow[]  folders;
            FoldersRow folder, productFolder;

            //Check for the default structure of folders and queries
            //Check for folder "Product Queries"
            folder = GetFolderByName(connectionRow, "Product Queries");
            if (folder == null)
            {
                //create product queries folder
                folder = CreateFolder(connectionRow, "Product Queries", 0, -1);

                if (folder == null)
                {
                    throw new Exception("Queries folder structure is corrupted!");
                }
            }

            parentID = folder.ID;

            DataRow[]  Queries;
            string     productName = String.Empty;
            QueriesRow query;

            #region add each product as a folder in the tree

            CatalogueManager    catalogues = CatalogueManager.Instance();
            NameValueCollection products   = catalogues.GetCataloguesForConnection(connectionRow.ConnectionId).catalogueProduct;

            folders = _instance.Folders.Select("ParentID = " + parentID.ToString() + " AND UserID = " + connectionRow.ConnectionId.ToString());

            for (int i = folders.GetLength(0) - 1; i >= 0; i--)
            {
                productFolder = (FoldersRow)folders[i];

                //check if product belongs to the current user
                bool belongsToCurrentUser = false;

                for (int index = 0; index < products.Count; index++)
                {
                    if (folder.Name == products.GetKey(index).Split(',')[1])
                    {
                        belongsToCurrentUser = true;
                        break;
                    }
                }

                if (!belongsToCurrentUser)
                {
                    productFolder.Delete();
                    //folder.Delete();
                }
            }


            //generate new product folders
            for (int i = 0; i < products.Count; i++)
            {
                productName = products.GetKey(i).Split(',')[1];
                CreateProductFolderDefaultQueries(connectionRow, parentID, productName);
            }

            #endregion

            //Check for the default folder "My Queries"

            folder = GetFolderByName(connectionRow, "My Queries");

            if (folder == null)
            {
                //think about throuwing error
                folder = CreateFolder(connectionRow, "My Queries", 0, -1);

                if (folder == null)
                {
                    throw new Exception("Queries folder structure is corrupted!");
                }
            }

            #region Check if exists predefined query My Opened BUGS
            Queries = _instance.Queries.Select("Name = 'My opened bugs' AND FolderID = " + folder.ID);

            if (Queries.GetLength(0) == 0)
            {
                query = _instance.Queries.NewQueriesRow();

                query.Name        = "My opened bugs";
                query.Description = "All my opened bugs for any product";
                query.FolderID    = folder.ID;
                query.TypeID      = Convert.ToByte(_queryTypes.Predefined);
                _instance.Queries.AddQueriesRow(query);
                _instance.AddParameterValuesForQuery(query, GetParamsForOpenedBugsQuery(String.Empty, true, connectionRow.UserName));
            }
            #endregion

            #region Check if exists predefined query My Closed BUGS
            Queries = _instance.Queries.Select("Name = 'My closed bugs' AND FolderID = " + folder.ID);

            if (Queries.GetLength(0) == 0)
            {
                query             = _instance.Queries.NewQueriesRow();
                query.Name        = "My closed bugs";
                query.Description = "All my closed bugs for any product";
                query.FolderID    = folder.ID;
                query.TypeID      = Convert.ToByte(_queryTypes.Predefined);
                _instance.Queries.AddQueriesRow(query);
                _instance.AddParameterValuesForQuery(query, GetParamsForClosedBugsQuery(String.Empty, true, connectionRow.UserName));
            }
            #endregion

            #region Check if exists predefined query My Fixed BUGS
            Queries = _instance.Queries.Select("Name = 'My fixed bugs' AND FolderID = " + folder.ID);

            if (Queries.GetLength(0) == 0)
            {
                query             = _instance.Queries.NewQueriesRow();
                query.Name        = "My fixed bugs";
                query.Description = "All my fixed bugs for any product";
                query.FolderID    = folder.ID;
                query.TypeID      = Convert.ToByte(_queryTypes.Predefined);
                _instance.Queries.AddQueriesRow(query);
                _instance.AddParameterValuesForQuery(query, GetParamsForFixedBugsQuery(String.Empty, true, connectionRow.UserName));
            }
            #endregion

            //Update Tree with the default structure
            _instance.Folders.AcceptChanges();

            _instance.Queries.AcceptChanges();

            _instance.ParametersValues.AcceptChanges();
        }
コード例 #12
0
 void Start()
 {
     catalogueManager     = GameObject.FindWithTag("CatalogueManager").GetComponent <CatalogueManager>();
     tempDataPath         = Application.persistentDataPath + "/Temp/" + Guid.NewGuid().ToString() + "/";
     previewImage.enabled = false;
 }
コード例 #13
0
ファイル: ItemManager.cs プロジェクト: djdeathgirl/Jabbo
        internal void placeItem(int itemID, int templateID, int X, int Y, byte typeID, byte Z)
        {
            if (_Items.ContainsKey(itemID))
            {
                return;
            }

            try
            {
                CatalogueManager.itemTemplate Template = CatalogueManager.getTemplate(templateID);

                int Length = 0;
                int Width  = 0;
                if (Z == 2 || Z == 6)
                {
                    Length = Template.Length;
                    Width  = Template.Width;
                }
                else
                {
                    Length = Template.Width;
                    Width  = Template.Length;
                }

                int testH = _Room._sqHeight[X, Y];
                int H     = testH;
                if (_Room._sqStack[X, Y] != null)
                {
                    FloorItem topItem = (FloorItem)_Items[_Room._sqStack[X, Y].topItemID()];
                    H = topItem.H + CatalogueManager.getTemplate(topItem.TypeDBID).Height;
                }

                for (int jX = X; jX < X + Width; jX++)
                {
                    for (int jY = Y; jY < Y + Length; jY++)
                    {
                        if (_Room._sqUnit[jX, jY])
                        {
                            return;
                        }

                        Room.squareState jState = _Room._sqState[jX, jY];
                        if (jState != Room.squareState.Open)
                        {
                            if (jState == Room.squareState.Blocked)
                            {
                                if (_Room._sqStack[jX, jY] == null)
                                {
                                    return;
                                }
                                else
                                {
                                    FloorItem topItem = (FloorItem)_Items[_Room._sqStack[jX, jY].topItemID()];
                                    CatalogueManager.itemTemplate topItemTemplate = CatalogueManager.getTemplate(topItem.TypeDBID);
                                    if (topItemTemplate.Height == 0 || topItemTemplate.typeID == 2 || topItemTemplate.typeID == 3) // No stacking on seat/bed
                                    {
                                        return;
                                    }
                                    else
                                    {
                                        if (topItem.H + topItemTemplate.Height > H)
                                        {
                                            H = topItem.H + topItemTemplate.Height;
                                        }
                                    }
                                }
                            }
                            else
                            {
                                return;
                            }
                        }
                    }
                }

                for (int jX = X; jX < X + Width; jX++)
                {
                    for (int jY = Y; jY < Y + Length; jY++)
                    {
                        ItemStack Stack = null;
                        if (_Room._sqStack[jX, jY] == null)
                        {
                            if ((Template.typeID == 1 && Template.Height > 0) || Template.typeID == 4)
                            {
                                Stack = new ItemStack();
                                Stack.Add(itemID);
                            }
                        }
                        else
                        {
                            Stack = _Room._sqStack[jX, jY];
                            Stack.Add(itemID);
                        }

                        _Room._sqState[jX, jY] = (Room.squareState)Template.typeID;
                        _Room._sqStack[jX, jY] = Stack;
                        if (Template.typeID == 2 || Template.typeID == 3)
                        {
                            _Room._sqItemHeight[jX, jY] = H + Template.Height;
                            _Room._sqItemRot[jX, jY]    = Z;
                        }
                        else if (Template.typeID == 4)
                        {
                            _Room._sqItemHeight[jX, jY] = H;
                        }
                    }
                }

                MySQL.runQuery("UPDATE items SET room = '" + _Room.RoomID + "',tile = '" + X + "_" + Y + "',h = '" + Z + "' WHERE id = '" + itemID + "' LIMIT 1");
                FloorItem Item = new FloorItem(itemID, templateID, X, Y, Z, H, "");
                _Items.Add(itemID, Item);
                _Room.sendData("A]" + Item.ToString());
            }
            catch { }
        }
コード例 #14
0
ファイル: ItemManager.cs プロジェクト: djdeathgirl/Jabbo
        internal void relocateItem(int itemID, int X, int Y, byte Z)
        {
            try
            {
                FloorItem Item = (FloorItem)_Items[itemID];
                CatalogueManager.itemTemplate Template = CatalogueManager.getTemplate(Item.TypeDBID);

                int Length = 0;
                int Width  = 0;
                if (Z == 2 || Z == 6)
                {
                    Length = Template.Length;
                    Width  = Template.Width;
                }
                else
                {
                    Length = Template.Width;
                    Width  = Template.Length;
                }

                int baseFloorH = _Room._sqHeight[X, Y];
                int H          = baseFloorH;
                if (_Room._sqStack[X, Y] != null)
                {
                    FloorItem topItem = (FloorItem)_Items[_Room._sqStack[X, Y].topItemID()];
                    if (topItem != Item)
                    {
                        CatalogueManager.itemTemplate topTemplate = CatalogueManager.getTemplate(topItem.TypeDBID);
                        if (topTemplate.typeID == 1)
                        {
                            H = topItem.H + topTemplate.Height;
                        }
                    }
                    else if (_Room._sqStack[X, Y].Count > 1)
                    {
                        H = topItem.H;
                    }
                }

                for (int jX = X; jX < X + Width; jX++)
                {
                    for (int jY = Y; jY < Y + Length; jY++)
                    {
                        if (Template.typeID != 2 && _Room._sqUnit[jX, jY])
                        {
                            return;
                        }

                        Room.squareState jState = _Room._sqState[jX, jY];
                        ItemStack        Stack  = _Room._sqStack[jX, jY];
                        if (jState != Room.squareState.Open)
                        {
                            if (Stack == null)
                            {
                                if (jX != Item.X || jY != Item.Y)
                                {
                                    return;
                                }
                            }
                            else
                            {
                                FloorItem topItem = (FloorItem)_Items[Stack.topItemID()];
                                if (topItem != Item)
                                {
                                    CatalogueManager.itemTemplate topItemTemplate = CatalogueManager.getTemplate(topItem.TypeDBID);
                                    if (topItemTemplate.typeID == 1 && topItemTemplate.Height > 0)
                                    {
                                        if (topItem.H + topItemTemplate.Height > H)
                                        {
                                            H = topItem.H + topItemTemplate.Height;
                                        }
                                    }
                                    else
                                    {
                                        if (topItemTemplate.typeID == 2)
                                        {
                                            return;
                                        }
                                    }
                                }
                            }
                        }
                    }
                }

                int oldLength = 1;
                int oldWidth  = 1;

                if (Template.Length > 1 || Template.Width > 1)
                {
                    if (Item.Z == 2 || Item.Z == 6)
                    {
                        oldLength = Template.Length;
                        oldWidth  = Template.Width;
                    }
                    else
                    {
                        oldLength = Template.Width;
                        oldWidth  = Template.Length;
                    }
                }

                for (int jX = Item.X; jX < Item.X + oldWidth; jX++)
                {
                    for (int jY = Item.Y; jY < Item.Y + oldLength; jY++)
                    {
                        ItemStack Stack = _Room._sqStack[jX, jY];
                        if (Stack != null && Stack.Count > 1)
                        {
                            if (itemID == Stack.bottomItemID())
                            {
                                if (CatalogueManager.getTemplate(((FloorItem)_Items[Stack.topItemID()]).TypeDBID).typeID == 2)
                                {
                                    _Room._sqState[jX, jY] = Room.squareState.Seat;
                                }
                                else
                                {
                                    _Room._sqState[jX, jY] = Room.squareState.Open;
                                }
                            }
                            else if (itemID == Stack.topItemID())
                            {
                                FloorItem belowItem = (FloorItem)_Items[Stack.getBelowItemID(itemID)];
                                int       typeID    = CatalogueManager.getTemplate(belowItem.TypeDBID).typeID;

                                _Room._sqState[jX, jY] = (Room.squareState)typeID;
                                if (typeID == 2 || typeID == 3)
                                {
                                    _Room._sqItemRot[jX, jY]    = (byte)belowItem.Z;
                                    _Room._sqItemHeight[jX, jY] = belowItem.H + CatalogueManager.getTemplate(belowItem.TypeDBID).Height;
                                }
                                else if (typeID == 4)
                                {
                                    _Room._sqItemHeight[jX, jY] = belowItem.H;
                                }
                            }
                            Stack.Remove(itemID);
                            _Room._sqStack[jX, jY] = Stack;
                        }
                        else
                        {
                            _Room._sqState[jX, jY]      = 0;
                            _Room._sqItemHeight[jX, jY] = 0;
                            _Room._sqItemRot[jX, jY]    = 0;
                            _Room._sqStack[jX, jY]      = null;
                        }
                        if (Template.typeID == 2 || Template.typeID == 3)
                        {
                            _Room.refreshCoord(jX, jY);
                        }
                    }
                }

                Item.X = X;
                Item.Y = Y;
                Item.Z = Z;
                Item.H = H;
                //_Room.sendData("A_" + Item.ToString());
                //DB.runQuery("UPDATE furniture SET x = '" + X + "',y = '" + Y + "',z = '" + Z + "',h = '" + H.ToString().Replace(',', '.') + "' WHERE id = '" + itemID + "' LIMIT 1");

                for (int jX = X; jX < X + Width; jX++)
                {
                    for (int jY = Y; jY < Y + Length; jY++)
                    {
                        ItemStack Stack = null;
                        if (_Room._sqStack[jX, jY] == null)
                        {
                            if (Template.Height > 0 && Template.typeID != 2 && Template.typeID != 3 && Template.typeID != 4)
                            {
                                Stack = new ItemStack();
                                Stack.Add(itemID);
                            }
                        }
                        else
                        {
                            Stack = _Room._sqStack[jX, jY];
                            Stack.Add(itemID);
                        }

                        _Room._sqState[jX, jY] = (Room.squareState)Template.typeID;
                        _Room._sqStack[jX, jY] = Stack;
                        if (Template.typeID == 2 || Template.typeID == 3)
                        {
                            _Room._sqItemHeight[jX, jY] = H + Template.Height;
                            _Room._sqItemRot[jX, jY]    = Z;
                            _Room.refreshCoord(jX, jY);
                        }
                        else if (Template.typeID == 4)
                        {
                            _Room._sqItemHeight[jX, jY] = H;
                        }
                    }
                }
            }
            catch { }
        }
コード例 #15
0
    public async void SaveAssetAsync()
    {
        if (string.IsNullOrEmpty(_AssetName.text))
        {
            MessageBox.Show("Error", "Asset Name Is Missing", () => { });
            return;
        }

        this.GetComponent <Button>().interactable = false;
        LoadingPanelUI loadingPanelUI = GetComponentInChildren <LoadingPanelUI>(true);

        loadingPanelUI.gameObject.SetActive(true);
        loadingPanelUI.ChangeText("Please Wait", "Uploading");

        const string _ItemFileName       = "CatalogueItem.asscat";
        const string _ThumnailPrefabName = "AssetThumnail_ConeSnip";

        _CatalogueManager = GameObject.FindWithTag("CatalogueManager").GetComponent <CatalogueManager>();

        _ItemCodeSnip = new CatalogueItem_CodeSnip
        {
            _FriendlyName    = _AssetName.text,
            _CodeText        = _CodeEditor.mainText.text,
            _ItemID          = _ItemCodeSnip._ItemID,
            _ModifiedDate    = DateTime.Now.ToString(),
            tags             = tagsInputField.text.Split('#'),
            itemTypeCategory = 0,
            favourite        = favouritesToggle.isOn,
        };

        if (_ItemCodeSnip._ItemID == 0) //New Asset
        {
            _CatalogueManager._CreatedAssetCount++;
            _ItemCodeSnip._ItemID = _CatalogueManager._CreatedAssetCount;
            CatalogueItemDetail _ItemDetail = new CatalogueItemDetail
            {
                ItemType = CatalogueItemDetail.ItemTypes.CodeSnip,
                ItemID   = _CatalogueManager._CreatedAssetCount,
                CatalogueItemDirectory = "/Assets/CodeSnips/" + _CatalogueManager._CreatedAssetCount.ToString("D5") + "/",
                DateModified           = DateTime.Now.ToString(),
                FriendlyName           = _ItemCodeSnip._FriendlyName,
                ItemTypeCategory       = 0,
            };

            _CatalogueManager._CatalogueItemDetails.Add(_ItemDetail);
            _CatalogueManager.ResyncCatalogueDatabaseAsync();

            string _LocalAssetPath = Application.persistentDataPath + "/" + _CatalogueManager._DatabaseUID + _ItemDetail.CatalogueItemDirectory + "/";
            cmd_File.DeleteFolder(_LocalAssetPath, false);

            using (DropboxClient _DropboxClient = new DropboxClient(AvoEx.AesEncryptor.DecryptString(PlayerPrefs.GetString("Token"))))
            {
                await cmd_Dropbox.UploadObjAsync(_DropboxClient, _ItemCodeSnip, _ItemDetail.CatalogueItemDirectory, _ItemFileName);

                Debug.Log("LOG:" + DateTime.Now.ToString() + " - " + _ItemCodeSnip._FriendlyName + " Created");
                MessageBox.Show("Boom Shaka Laka", "Asset Now Added", () =>
                {
                    GetComponent <PopupItemController>().HideDialog(0);
                });
            }

            Directory.CreateDirectory(_LocalAssetPath);
            cmd_File.SerializeObject(_LocalAssetPath, _ItemFileName, _ItemCodeSnip);
            GameObject go = Instantiate(Resources.Load(_ThumnailPrefabName) as GameObject, GameObject.FindWithTag("ThumbnailGrid").transform);
            go.SendMessage("ObjectParse", _ItemCodeSnip);
        }
        else
        {
            foreach (CatalogueItemDetail _itemDetail in _CatalogueManager._CatalogueItemDetails)
            {
                if (_itemDetail.ItemID == _ItemCodeSnip._ItemID)
                {
                    _itemDetail.DateModified  = DateTime.Now.ToString();
                    _itemDetail.FriendlyName  = _ItemCodeSnip._FriendlyName;
                    _ItemThumbnail.lable.text = _ItemCodeSnip._FriendlyName;
                    _ItemThumbnail.ObjectParse(_ItemCodeSnip);
                    _CatalogueManager.ResyncCatalogueDatabaseAsync();
                    using (DropboxClient dropboxClient = new DropboxClient(AvoEx.AesEncryptor.DecryptString(PlayerPrefs.GetString("Token"))))
                    {
                        await cmd_Dropbox.UploadObjAsync(dropboxClient, _ItemCodeSnip, _itemDetail.CatalogueItemDirectory, _ItemFileName);

                        Debug.Log("LOG:" + DateTime.Now.ToString() + " - " + _ItemCodeSnip._FriendlyName + " Updated");
                        MessageBox.Show("Boom Shaka Laka", "Asset Now Updated", () =>
                        {
                            GetComponent <PopupItemController>().HideDialog(0);
                        });
                    }
                    string localPath = Application.persistentDataPath + "/" + _CatalogueManager._DatabaseUID + _itemDetail.CatalogueItemDirectory + "/";
                    cmd_File.SerializeObject(localPath, _ItemFileName, _ItemCodeSnip);
                    return;
                }
            }
        }
        loadingPanelUI.gameObject.SetActive(false);
        this.GetComponent <Button>().interactable = true;
    }
コード例 #16
0
        static void Initialise()
        {
            Console.WriteLine("=========================================");
            Console.WriteLine(" Jabbo V3.2 Server");
            Console.WriteLine(" (C) Thomas Vermaercke 2006-2013");
            Console.WriteLine("=========================================");
            Console.WriteLine("");
            Console.WriteLine("Starting up...");

            INIFile MyINIFile = new INIFile("settings.ini");

            Config.linux = bool.Parse(MyINIFile.GetValue("config", "linux", "true"));

            if (!Config.linux)
            {
                Console.WindowHeight = Console.LargestWindowHeight - 25;
                Console.WindowWidth  = Console.LargestWindowWidth - 25;
                Console.Title        = "Jabbo Server";
            }

            Config.debug   = bool.Parse(MyINIFile.GetValue("config", "debug", "false"));
            Config.port    = int.Parse(MyINIFile.GetValue("config", "port", "3500"));
            Config.maxconn = int.Parse(MyINIFile.GetValue("config", "maxcon", "150"));

            Config.dbHost     = MyINIFile.GetValue("mysql", "host", "localhost");
            Config.dbPort     = int.Parse(MyINIFile.GetValue("mysql", "port", ""));
            Config.dbUsername = MyINIFile.GetValue("mysql", "username", "root");
            Config.dbPassword = MyINIFile.GetValue("mysql", "password", "");
            Config.dbName     = MyINIFile.GetValue("mysql", "database", "jabbo");

            Console.WriteLine("    Options read successfully.");

            if (MySQL.openConnection(Config.dbHost, Config.dbPort, Config.dbName, Config.dbUsername, Config.dbPassword) == false)
            {
                return;
            }

            Console.WriteLine("");

            TextsManager.Init();
            UserManager.Init();
            CatalogueManager.Init();
            RankManager.Init();
            NavigatorManager.Init();

            if (SocketServer.Init(Config.port, Config.maxconn) == false)
            {
                return;
            }
            if (WebsiteSocketServer.Init(Config.port + 1, "127.0.0.1") == false)
            {
                return;
            }

            serverMonitor.Priority = ThreadPriority.Lowest;
            serverMonitor.Start();

            CsHTTPServer.CsHTTPServer HTTPServer;
            HTTPServer = new CsHTTPServer.MyServer(3502);
            HTTPServer.Start();
        }