Esempio n. 1
0
 void CreatePlacedDecor()
 {
     foreach (var decor in PlacedDecorInRoom)
     {
         DecorData dec = FindDecorWithId(decor.Id);
         if (dec != null)
         {
             DecorController.Instance.Create3DDecoreForSociety(dec, true, decor.Position, decor.Rotation);
         }
     }
 }
Esempio n. 2
0
    public void AddPrizeDecorList(int Id, DecorInfo target, string Name, string SubCat, int level, int gems, int price)
    {
        int subcat = 0;

        switch (SubCat.Trim('"'))
        {
        case "Sofas":
            subcat = 0;
            break;

        case "Chairs":
            subcat = 1;
            break;

        case "Tables":
            subcat = 2;
            break;

        case "Beds":
            subcat = 3;
            break;

        case "Plants":
            subcat = 4;
            break;

        case "Electronics":
            subcat = 5;
            break;

        case "Cabinets":
            subcat = 7;
            break;

        case "Misc":
        default:
            subcat = 6;
            break;
        }

        DecorData data = new DecorData(Name, Id, subcat, target.Icon, true, true, level, gems, price, false);

        AllDecores.Add(data);

        DownloadedDecors.Add(target.Prefab);
    }
Esempio n. 3
0
    public void Create3DDecoreForSociety(DecorData decor, bool isPlaced, Vector3 position, int direction = 0)
    {
        ScreenManager.Instance.HomeRoomSociety.GetComponent <SocietyHomeRoom>().BackFromSocietyStorage();
        var asset = Resources.Load <Decor3DView> ("Decors/" + decor.Name.Trim('"'));

        if (asset == null)
        {
            //          List<string> downloadednames = new List<string> ();
            for (int i = 0; i < DownloadedDecors.Count; i++)
            {
                if (DownloadedDecors [i].GetComponent <Decor3DView> ().name == decor.Name.Trim('"') || DownloadedDecors [i].GetComponent <Decor3DView> ().name == FirstCharToUpper(decor.Name.Trim('"')))
                {
                    asset = DownloadedDecors [i].GetComponent <Decor3DView> ();
                }
            }
        }
        GameObject Go = (GameObject)Instantiate(asset.gameObject, Vector3.zero, Quaternion.identity);

        var RoomforSociety = GameObject.Find("SocietyPartyRoom");

        Go.transform.SetParent(RoomforSociety.transform);
        Go.GetComponent <Decor3DView>().SetPositionofThisItem(position, direction);

        Go.SetMaterialRecursively();
        Go.GetComponent <Decor3DView> ().CreateDecore(decor);
        Go.GetComponent <DragSnap>().grid            = Go.transform.parent.GetChild(5).gameObject;//grid Container
        Go.GetComponent <Decor3DView>().Placed       = isPlaced;
        Go.GetComponent <Decor3DView>().isForSociety = true;

        if (isPlaced)
        {
            Go.transform.GetChild(1).gameObject.SetActive(false);
            Go.GetComponent <DragSnap> ().enabled = false;
            Go.GetComponent <Decor3DView>().Correct();
        }
        else
        {
            Go.transform.GetChild(0).gameObject.SetActive(true);
            Go.GetComponent <DragSnap> ().enabled = true;
        }
    }
Esempio n. 4
0
    public void Create3DDecoreForHostParty(DecorData decor, Vector3 Pos, int dir, GameObject Parent)
    {
        if (decor == null)
        {
            return;
        }

        var asset = Resources.Load <Decor3DView> ("Decors/" + decor.Name.Trim('"'));

        if (asset == null)
        {
            for (int i = 0; i < DecorController.Instance.DownloadedDecors.Count; i++)
            {
                if (DecorController.Instance.DownloadedDecors [i].GetComponent <Decor3DView> ().name == decor.Name.Trim('"') || DecorController.Instance.DownloadedDecors [i].GetComponent <Decor3DView> ().name == DecorController.FirstCharToUpper(decor.Name.Trim('"')))
                {
                    asset = DecorController.Instance.DownloadedDecors [i].GetComponent <Decor3DView> ();
                }
            }
        }
        var        _Layer = LayerMask.NameToLayer("Default");
        GameObject Go     = (GameObject)Instantiate(asset.gameObject, Pos, Quaternion.identity);

        Destroy(Go.GetComponent <DragSnap> ());
        Go.transform.parent        = Parent.transform;
        Go.transform.localPosition = Pos;

//		var drs = Go.AddComponent<DragSnap> ();
//		drs.grid = Parent.transform.GetChild (5).gameObject;
        Go.SetLayerRecursively(_Layer);
        Go.SetMaterialRecursively();
        Go.GetComponent <Decor3DView> ().direction = dir;        // To be Confirmed taht this fires after Start of Decor3D
        Go.GetComponent <Decor3DView> ().CreateDecore(decor);
        Go.GetComponent <Decor3DView> ().Start();
        Go.transform.FindChild("SelectionParent").gameObject.SetActive(false);
        Destroy(Go.GetComponent <Decor3DView> ());
    }
Esempio n. 5
0
    public void Create3DDecore(DecorData decor)
    {
        var asset = Resources.Load <Decor3DView> ("Decors/" + decor.Name.Trim('"'));

        if (asset == null)
        {
            //			List<string> downloadednames = new List<string> ();
            for (int i = 0; i < DownloadedDecors.Count; i++)
            {
                if (DownloadedDecors [i].GetComponent <Decor3DView> ().name == decor.Name.Trim('"') || DownloadedDecors [i].GetComponent <Decor3DView> ().name == FirstCharToUpper(decor.Name.Trim('"')))
                {
                    asset = DownloadedDecors [i].GetComponent <Decor3DView> ();
                }
                //				downloadednames.Add (DownloadedDecors [i].name);
            }

            //			var j = downloadednames.IndexOf (decor.Name);
            //			asset = DownloadedDecors [j].GetComponent<Decor3DView> ();
        }

        GameObject Go = (GameObject)Instantiate(asset.gameObject, Vector3.zero, Quaternion.identity);

        Go.SetMaterialRecursively();

        Go.GetComponent <Decor3DView> ().CreateDecore(decor);

        /// Updated by rehan on 17/11/2016 for decor placement
//		Destroy (Go.GetComponent<DragSnap> ());
//		Go.AddComponent<DragSnap> ();

//		Destroy (Go.GetComponent<DecorOrderInLayer> ());
//		Go.AddComponent<DecorOrderInLayer> ();


        Go.transform.GetChild(0).gameObject.SetActive(true);
    }
Esempio n. 6
0
 public void CreateDecore(DecorData decoredata)
 {
     decorInfo = decoredata;
 }
Esempio n. 7
0
        public void ExtractLevel(LevelEditorData receivedLevelData)
        {
            //foreach object in saveObjectData

            //create a new ObjectData bin to assign values to;

            //get the cubeType data
            //get the world position data
            //get the nodePOs data

            //create a new Cube from prefab

            //Get the cube's EditorObject Component

            //set the component's values to match the recovered data

            //Get the new nodes in the world
            //get the worldPosition of each of their ndoes

            //set cube worldPosition to its corresponding Node_Object worldPosition

            GameObject newCube;
            GameObject newDecor;

            if (isInEditor)
            {
                _LevelEditor.instance.inSceneGameObjects.Clear();
            }

            foreach (DecorData recoveredDecorFromSave in receivedLevelData.savedEnvironmentData)
            {
                newDecor = Instantiate(decorPrefab, Vector3.zero, Quaternion.identity);

                newDecor.transform.parent = _Grid.instance.gameObject.transform.GetChild(0).GetChild(2);

                newDecor.transform.localPosition = recoveredDecorFromSave.localPosition;
                newDecor.transform.localRotation = recoveredDecorFromSave.localRotation;

                //get the new cube's Object Data and create a reference to it
                DecorData newDecorData = newDecor.GetComponent <_DecorObject>().decorData;

                //assign the new Cube's data to match the recovered cube's
                newDecorData = recoveredDecorFromSave;
            }

            foreach (ObjectData recoveredDataFromSave in receivedLevelData.savedObjectsData)
            {
                //create a new empty cube
                newCube = Instantiate(cubePrefab, Vector3.zero, Quaternion.identity);

                //get the new cube's Object Data and create a reference to it
                ObjectData newCubeData = newCube.GetComponent <Grid_Object>().cubeData;

                //assign the new Cube's data to match the recovered cube's
                newCubeData = recoveredDataFromSave;

                //assign the cube's parent in the hiearchy
                newCube.transform.parent = _Grid.instance.gameObject.transform.GetChild(0).transform.GetChild(1).transform;

                //add the newly created cube to a list of existing cubes
                if (isInEditor)
                {
                    _LevelEditor.instance.inSceneGameObjects.Add(newCube);
                }

                for (int i = 0; i < _Grid.instance.onPlayNodePosList.Count; i++)
                {
                    Grid_Node newNodeObjects = _Grid.instance.onPlayNodePosList[i].GetComponent <Grid_Node>();

                    if (newCubeData.gridPositionX >= _Grid.instance.gridSize.x ||
                        newCubeData.gridPositionY >= _Grid.instance.gridSize.y ||
                        newCubeData.gridPositionZ >= _Grid.instance.gridSize.z)
                    {
                        Destroy(newCube);
                    }

                    else if (newNodeObjects.posX == newCubeData.gridPositionX &&
                             newNodeObjects.posY == newCubeData.gridPositionY &&
                             newNodeObjects.posZ == newCubeData.gridPositionZ)
                    {
                        newCube.SendMessage("ReceiveData", recoveredDataFromSave);

                        if (isInEditor)
                        {
                            Node nodeToPlace = _Grid.instance.grid[(int)newCubeData.gridPositionX, (int)newCubeData.gridPositionY, (int)newCubeData.gridPositionZ];
                            nodeToPlace.cubeOnNodePos = newCube.GetComponent <Grid_Object>();
                        }

                        newCube.transform.position             = _Grid.instance.onPlayNodePosList[i].transform.position;
                        newCubeData.worldPosition              = newCube.transform.position;
                        newCube.transform.GetChild(0).rotation = newCubeData.worldRotation;
                    }
                }
            }
            receivedLevelData.savedObjectsData.Clear();
            receivedLevelData.savedEnvironmentData.Clear();
            levelIsLoaded = true;
        }
Esempio n. 8
0
 void Init(GameObject go, DecorData decor)
 {
     go.GetComponent <DecorView> ().Item = decor;
 }
Esempio n. 9
0
    public void AddDecorToList(int Id, Decor3DView info, string Name, string SubCat, int level, int gems, int price, int vipsub)
    {
//		DecorInfo info = target.GetComponent<DecorInfo> ();
        int subcat = 0;

        /*
         *
         * Sofa = 0,
         * Chairs = 1,
         * Tables = 2,
         * Beds = 3,
         * Techs = 4,
         * Plants = 5,
         * Appliance = 6,
         * Plumbing = 7,
         * Cabinets = 8,
         * Misc = 9
         */
        switch (SubCat.Trim('"'))
        {
        case "Sofas":
            subcat = 0;
            break;

        case "Chairs":
            subcat = 1;
            break;

        case "Tables":
            subcat = 2;
            break;

        case "Beds":
            subcat = 3;
            break;

        case "Plants":
            subcat = 4;
            break;

        case "Electronics":
            subcat = 5;
            break;

        case "Living room":     // Almirah
            subcat = 6;
            break;

        case "Bedroom":    //"Cabinets":
            subcat = 7;
            break;

        case "Kitchen":    //"Fridges":
            subcat = 8;
            break;

        case "Patio":    //"Radio":
            subcat = 9;
            break;


//                Sofa = 0,
//                Chairs = 1,
//                Tables = 2,
//                Beds = 3,
//                Plants = 4,
//                Electronics = 5,
//                Almirah = 6,
//                Cabinets = 7,
//                Fridges = 8,
//                Radio= 9
        }

        DecorData data = new DecorData(Name, Id, subcat, info.decorInfo.DisplayIcon, false, false, level, gems, price, vipsub == 1? true:false);

        AllDecores.Add(data);

        DownloadedDecors.Add(info.gameObject);
    }