// Draws a dragable handle in the scene view and detect if it has moved private void DrawHandle(GridCheck g, GeneratedObject ge, Color color, int hIndex) { EditorGUI.BeginChangeCheck(); // Draw a separate handle to visualize that this object has been selected if (objectSelected && hIndex == selectedHandleIndex + 1) { Handles.color = Color.red; Handles.FreeMoveHandle(9999, g.transform.position, Quaternion.identity, 0.55f, Vector3.one, Handles.CircleHandleCap); } Handles.color = color; // Se the colour of the actual handle startPos = g.transform.position; // Set the starting position before the handle starts moving // Draw the actual handle and save it's position in a variable //Vector3 dPos = Handles.FreeMoveHandle(hIndex, g.transform.position, Quaternion.identity, 0.45f, Vector3.one, Handles.CircleHandleCap); Vector3 dPos = Handles.FreeMoveHandle(hIndex, g.transform.position, Quaternion.identity, 0.225f, Vector3.one, Handles.DotHandleCap); if (dPos != startPos) // Check if this handle has moved and set the scene to dirty if it has, { // Because even though it's moving a gameobject the scene can't detect a chance so it doesn't save... EditorSceneManager.MarkSceneDirty(EditorSceneManager.GetActiveScene()); } g.transform.position = dPos; // Set the new position have to set this twice because of the way obstacles are set up dPos = g.GetPosition(lg.grid); // Get the nearest grid position of the set position g.transform.position = dPos; // Set the new position on the grid ge.position = dPos; // Set the position for the generator to track and save EditorGUI.EndChangeCheck(); }
public void LoadFiresFromCache() { if (lg.levelCache.Data.Fires.Count > 0 && lg.levelCache.Data.Fires[0].set) { ClearFires(); lg.data.Fires = new List <GeneratedObject>(); foreach (GeneratedObject o in lg.levelCache.Data.Fires) { GameObject go = PrefabUtility.InstantiatePrefab(lg.obstacleList.Fire) as GameObject; Vector3 pos = o.position; pos.z = 0; if (go != null) { go.transform.position = pos; go.transform.rotation = Quaternion.identity; go.transform.SetParent(lg.fireParent); go.name = lg.obstacleList.Fire.name; lg.fireGridList.Add(go.GetComponent <GridCheck>()); GeneratedObject ge = new GeneratedObject(o.prefabIndex, o.position); lg.data.Fires.Add(ge); lg.SpawnedObjectsCount++; } } } }
public void GeneratedObjectConstructor_Test() { GeneratedObject target = GeneratedObject.CreateGeneratedObject <MyObject>(); MyObject obj = (MyObject)target.Create(); Assert.IsNotNull(obj); }
public void UnselectObject() { OT.OnUnselectObject(); go = null; OT = null; DeactivatePanels(); }
public void Duplicate() { if (rectTransform.localPosition.x + rectTransform.sizeDelta.x * rectTransform.localScale.x < 280) { GameObject go = Instantiate(this.gameObject, this.transform.parent); RectTransform gorc = go.GetComponent <RectTransform>(); RawImage rawImage = go.GetComponent <RawImage>(); if (rawImage != null) { rawImage.DOFade(0, 0f); rawImage.DOFade(1, 0.5f); } Vector3 scaledGO = gorc.localScale; //gorc.localScale = Vector3.zero; gorc.DOMoveX(gorc.position.x + (gorc.sizeDelta.x / 43 * this.gameObject.transform.localScale.x), 0.5f); //gorc.DOScale(scaledGO, 0.5f); GeneratedObject generatedObject = go.GetComponent <GeneratedObject>(); ObjectT objectT = go.GetComponent <ObjectT>(); if (generatedObject.type == "Drag") { ObjectSPawner.Instance.AssignId(generatedObject, objectT); generatedObject.pair = null; } if (generatedObject is ItemSlot) { gorc.transform.SetAsFirstSibling(); } ObjectModificator.Instance.SelectObject(generatedObject, objectT); SoundManager.Instance.PlaySound(0); } UpdatePair(); }
public void SetupPanel(RawImage img, RectTransform rect, ObjectT objt, GeneratedObject go) { this.objT = objt; tvar = img; this.rect = rect; SetButtonColor(colorBtn, img.color); objectName.text = go.objectName; this.GO = go; }
public void OnUnselectObject() { outline.enabled = false; GeneratedObject GO = GetComponent <GeneratedObject>(); if (GO.pair != null) { GO.pair.GetComponent <Outline>().enabled = false; } }
public void SetTvar(int id) { tvar.texture = tvary[id]; GO.imageID = id; if (GO.pair != null) { GeneratedObject other = GO.pair.GetComponent <GeneratedObject>(); other.img.texture = tvary[id]; other.imageID = id; } }
private int calcPrefabSpawnAmt(GeneratedObject prefab) { int amtToSpawn = 0; for (int i = 0; i < mapController.getMapTileCount(); i++) { if (Random.Range(0, CEILING) < prefab.density) { amtToSpawn++; } } return(amtToSpawn); }
public GeneratedObject Generate(ConfigurablePrototype prototype, ICollection <DatasetPrototype> datasetPrototypes = null) { var generatedObject = new GeneratedObject(prototype.Name); foreach (var fieldPrototype in prototype.Fields) { var datasetPrototype = datasetPrototypes?.FirstOrDefault(d => d.Id == fieldPrototype.DatasetId); var fieldValue = !fieldPrototype.IsRequired && _random.Next(2) == 1 ? null : _fieldsGenerator.Generate(fieldPrototype.Type, fieldPrototype.Constraints, datasetPrototype); generatedObject.Fields.Add(new GeneratedField(fieldPrototype.Name, fieldValue)); } return(generatedObject); }
public void AssignId(GeneratedObject generatedObject, ObjectT objectT) { if (objectT.typ.Equals(GenObjectType.Drag)) { if (objectT.prefabTyp.Equals(PrefabType.Tvar)) { generatedObject.objectName = "Tvar " + objectContextID; generatedObject.GetComponent <DragDrop>().contextID = objectContextID; objectContextID++; } if (objectT.prefabTyp.Equals(PrefabType.Basic)) { generatedObject.objectName = "Obraz " + objectContextID; generatedObject.GetComponent <DragDrop>().contextID = objectContextID; objectContextID++; } } }
public void SetupPanel(GeneratedObject generatedObject, ObjectT objectT) { nameText.text = generatedObject.objectName; if (objectT.velkost.Length > 4) { velkostTxt.text = objectT.velkost; } else { velkostTxt.text = "-obrázok nenahratý-"; } if (objectT.typ.Equals(GenObjectType.Static)) { imgLoader.SetActive(false); } else { imgLoader.SetActive(true); } }
public SerializedObject(GeneratedObject obj) { position = obj.rectTransform.position; scale = obj.rectTransform.localScale; rotation = obj.rectTransform.localRotation; type = obj.type; Texture2D tex = (Texture2D)obj.img.texture; texX = tex.width; texY = tex.height; rawRect = obj.img.uvRect; sizeDelta = obj.rectTransform.sizeDelta; texbytes = ImageConversion.EncodeToPNG(tex); if (obj is ClickableObject) { ClickableObject co = (ClickableObject)obj; additionalTextures = new List <SerializableTexture>(); foreach (Texture2D s in co.imgFace) { additionalTextures.Add(new SerializableTexture(s)); } currentIdClick = co.currentId; correctIdClick = co.correctId; } if (obj is DragDrop) { DragDrop dg = (DragDrop)obj; imageID = dg.imageID; contextID = dg.contextID; color = dg.img.color; } if (obj is ItemSlot) { ItemSlot dg = (ItemSlot)obj; imageID = dg.imageID; contextID = dg.contextID; textItemSlot = dg.text; color = dg.img.color; } }
public void SelectObject(GeneratedObject go, ObjectT OT) { if (this.OT != null) { if (!OT.Equals(this.OT)) { this.OT.OnUnselectObject(); } else { return; } } this.go = go; this.OT = OT; DeactivatePanels(); OT.OnSelectObject(); generalPanel.gameObject.SetActive(true); generalPanel.SetupPanel(go.rectTransform, OT.img, OT); galeria.SetupGalery(OT, go); if (OT.prefabTyp.Equals(PrefabType.Tvar)) { tvarPanel.gameObject.SetActive(true); tvarPanel.SetupPanel(OT.img, go.rectTransform, OT, go); if (OT.typ.Equals(GenObjectType.Static)) { staticPanel.gameObject.SetActive(true); staticPanel.SetupPanel((ItemSlot)go); } if (OT.typ.Equals(GenObjectType.Drag)) { activePanel.gameObject.SetActive(true); activePanel.SetupPanel((GeneratedObject)go); } } if (OT.prefabTyp.Equals(PrefabType.Basic)) { obrPanel.gameObject.SetActive(true); obrPanel.SetupPanel((GeneratedObject)go, OT); if (OT.typ.Equals(GenObjectType.Drag)) { activePanel.gameObject.SetActive(true); activePanel.SetupPanel((GeneratedObject)go); } if (OT.typ.Equals(GenObjectType.Static)) { staticPanel.gameObject.SetActive(true); staticPanel.SetupPanel((ItemSlot)go); } if (OT.typ.Equals(GenObjectType.Afk)) { staticObrPanel.gameObject.SetActive(true); staticObrPanel.SetupPanel(go, OT); } } if (OT.prefabTyp.Equals(PrefabType.Swap)) { klikaciPanel.gameObject.SetActive(true); klikaciPanel.SetupPanel((ClickableObject)go, OT); } if (OT.prefabTyp.Equals(PrefabType.Text)) { textPanel.gameObject.SetActive(true); textPanel.SetupPanel(OT, (ItemSlot)go); tvarPanel.gameObject.SetActive(true); tvarPanel.SetupPanel(OT.img, go.rectTransform, OT, go); } }
public void Create_Test() { GeneratedObject target = GeneratedObject.CreateGeneratedObject <MyObject>(); Assert.AreSame(GeneratedObject.CreateGeneratedObject <MyObject>(), GeneratedObject.CreateGeneratedObject <MyObject>()); }
public void SetupGalery(ObjectT objectT, GeneratedObject go) { this.objectT = objectT; this.generatedObject = go; selectedArray = zvierata; }
public void SetupPanel(GeneratedObject GO) { this.GO = GO; UpdateFriendTxt(); }