/// <summary> /// Merges faces of the same side. /// </summary> /// <param name="o">pb_object to merge faces</param> /// <param name="side">Coordinate distance to side being used.</param> /// <param name="v">Vector value of the coordinate that indicates side</param> /// <param name="useRotation">Whether or not to merge all sides with same vector value v</param> /// <returns></returns> public static int MergeFacesOfSameSide(pb_Object o, float side, VectorValue v, bool useRotation = false) { List <pb_Face> mergeableFaces = new List <pb_Face>(); foreach (pb_Face f in o.faces) { bool sameSide = true; if (useRotation) { switch (v) { case VectorValue.z: side = o.vertices[f.indices[0]].z; break; case VectorValue.y: side = o.vertices[f.indices[0]].y; break; case VectorValue.x: default: side = o.vertices[f.indices[0]].x; break; } } float delta = 0.01f; foreach (int index in f.indices) { switch (v) { case VectorValue.z: sameSide = sameSide && Mathf.Abs(o.vertices[index].z - side) < delta; break; case VectorValue.y: sameSide = sameSide && Mathf.Abs(o.vertices[index].y - side) < delta; break; case VectorValue.x: default: sameSide = sameSide && Mathf.Abs(o.vertices[index].x - side) < delta; break; } } if (sameSide) { mergeableFaces.Add(f); } } if (mergeableFaces.Count > 1) { pb_Face[] faces = mergeableFaces.ToArray(); o.MergeFaces(faces); return(1); } return(0); }
private VectorValue GetScreenFillAspect() { if (_screenFillAspect == null) { _screenFillAspect = new VectorValue(name + FILL_ASPECT_RATION_SUFFIX); } return(_screenFillAspect); }
public static void CreateMyAsset() { VectorValue asset = ScriptableObject.CreateInstance <VectorValue>(); AssetDatabase.CreateAsset(asset, "Assets/Scripts/ScriptableObject/NewScripableObject.asset"); AssetDatabase.SaveAssets(); EditorUtility.FocusProjectWindow(); Selection.activeObject = asset; }
public SaveManager(Vector2 savePosition, VectorValue maxPositionMap, VectorValue minPositionMap, VectorValue resetMaxPosition, VectorValue resetMinPosition, SaveItem.Items saveItemManager, SaveInventory.Counts saveInventoryManager, SavePuzzle.Puzzles savePuzzleManager) { this.savePosition = savePosition; this.maxPositionMap = maxPositionMap.initialValue; this.minPositionMap = minPositionMap.initialValue; this.resetMaxPosition = resetMaxPosition.initialValue; this.resetMinPosition = resetMinPosition.initialValue; this.saveItemManager = saveItemManager.saveItems; this.saveInventoryManager = saveInventoryManager.saveCounts; this.savePuzzleManager = savePuzzleManager.savePuzzles; }
public void DownloadVectors() { bool flag; string url = "http://wonseokdotnet2.azurewebsites.net/GameAccess/GetVector/"; string _url = url + myName + "/"; using (var client = new WebClient()) { var json = client.DownloadString(_url); VectorValue vv = new VectorValue(json); Debug.Log("NAME IS THIS? " + myName); transform.position = new Vector3(vv.x, vv.y, vv.z); } num = 0; GameSocketManager.Socket.On("Locations", (data) => { Debug.Log("Socket is online at locations"); JArray array = JArray.Parse((string)data.Json.args[0]); for (int i = 0; i < array.Count; i++) { if (array[i][0].ToString() == ONLOAD.mail) { continue; } Debug.Log(array[i][0].ToString() + " " + array[i][1].ToString() + " " + array[i][2] + " " + array[i][3]); for (int j = 0; j < array.Count; j++) { Debug.Log("I'm here"); if (j > DataMembers.Count - 1) // 1 > -1 { Debug.Log("This is null!"); LoginMembers tmp = new LoginMembers(array[i][0].ToString(), (int)array[i][1], (int)array[i][2], (int)array[i][3], tmpObj); DataMembers.Add(tmp); break; } var m = DataMembers[j]; Debug.Log("Let's find it!"); if (m.isName(array[i][0].ToString()) && array[i][0].ToString() != ONLOAD.mail) { Debug.Log("Found it!"); //m.sphere.transform.position = new Vector3(m.x, m.y, m.z); m.x = (int)array[i][1]; m.y = (int)array[i][2]; m.z = (int)array[i][3]; break; } Debug.Log("Why I am here~?"); } } }); }
public static bool edit(this Material mat, VectorValue property, string name = null) { var val = mat.Get(property); if (name.IsNullOrEmpty()) { name = property.NameForDisplayPEGI(); } if (name.edit(ref val)) { mat.Set(property, val); return(true); } return(false); }
internal static void OnSliderControlChanged(float value, Slider slider, ControlType controlType, VectorValue vectorValue) { if (value == 0) { s_sliderChangedWanted = false; } else { if (!s_sliderChangedWanted) { s_sliderChangedWanted = true; s_currentSlider = slider; s_currentSliderType = controlType; s_currentSliderValueType = vectorValue; } s_currentSliderValue = value; } }
public void DownloadVectors() { bool flag; string url = "http://wonseokdotnet2.azurewebsites.net/GameAccess/GetVector/"; foreach (VectorValue i in ClientLists) { string _url = url + i.name + "/"; using (var client = new WebClient()) { var json = client.DownloadString(_url); VectorValue vv = new VectorValue(json); Debug.Log("NAME IS THIS? " + NAME); if (i.name == NAME) { Ball.position = new Vector3(vv.x, vv.y, vv.z); } } } }
internal static void OnVectorControlInputApplied(ControlType controlType, VectorValue vectorValue) { if (!(InspectorManager.Instance.m_activeInspector is GameObjectInspector instance)) { return; } // get relevant input for controltype + value InputField[] inputs = null; switch (controlType) { case ControlType.position: inputs = s_positionControl.inputs; break; case ControlType.localPosition: inputs = s_localPosControl.inputs; break; case ControlType.eulerAngles: inputs = s_rotationControl.inputs; break; case ControlType.localScale: inputs = s_scaleControl.inputs; break; } InputField input = inputs[(int)vectorValue]; float val = float.Parse(input.text); // apply transform value Vector3 vector = Vector3.zero; var transform = instance.TargetGO.transform; switch (controlType) { case ControlType.position: vector = transform.position; break; case ControlType.localPosition: vector = transform.localPosition; break; case ControlType.eulerAngles: vector = transform.eulerAngles; break; case ControlType.localScale: vector = transform.localScale; break; } switch (vectorValue) { case VectorValue.x: vector.x = val; break; case VectorValue.y: vector.y = val; break; case VectorValue.z: vector.z = val; break; } // set back to transform switch (controlType) { case ControlType.position: transform.position = vector; break; case ControlType.localPosition: transform.localPosition = vector; break; case ControlType.eulerAngles: transform.eulerAngles = vector; break; case ControlType.localScale: transform.localScale = vector; break; } }
internal GameObject ConstructEditorRow(GameObject parent, ControlEditor editor, ControlType type, VectorValue vectorValue) { var rowObject = UIFactory.CreateHorizontalGroup(parent, new Color(1, 1, 1, 0)); var rowGroup = rowObject.GetComponent <HorizontalLayoutGroup>(); rowGroup.childForceExpandWidth = false; rowGroup.childControlWidth = true; rowGroup.childForceExpandHeight = false; rowGroup.childControlHeight = true; rowGroup.spacing = 5; var rowLayout = rowObject.AddComponent <LayoutElement>(); rowLayout.minHeight = 25; rowLayout.flexibleHeight = 0; rowLayout.minWidth = 100; // Value labels var labelObj = UIFactory.CreateLabel(rowObject, TextAnchor.MiddleLeft); var labelText = labelObj.GetComponent <Text>(); labelText.color = Color.cyan; labelText.text = $"{vectorValue.ToString().ToUpper()}:"; labelText.fontSize = 14; labelText.resizeTextMaxSize = 14; labelText.resizeTextForBestFit = true; var labelLayout = labelObj.AddComponent <LayoutElement>(); labelLayout.minHeight = 25; labelLayout.flexibleHeight = 0; labelLayout.minWidth = 25; labelLayout.flexibleWidth = 0; // actual value label var valueLabelObj = UIFactory.CreateLabel(rowObject, TextAnchor.MiddleLeft); var valueLabel = valueLabelObj.GetComponent <Text>(); editor.values[(int)vectorValue] = valueLabel; var valueLabelLayout = valueLabelObj.AddComponent <LayoutElement>(); valueLabelLayout.minWidth = 85; valueLabelLayout.flexibleWidth = 0; valueLabelLayout.minHeight = 25; // input field var inputHolder = UIFactory.CreateVerticalGroup(rowObject, new Color(1, 1, 1, 0)); var inputHolderGroup = inputHolder.GetComponent <VerticalLayoutGroup>(); inputHolderGroup.childForceExpandHeight = false; inputHolderGroup.childControlHeight = true; inputHolderGroup.childForceExpandWidth = false; inputHolderGroup.childControlWidth = true; var inputObj = UIFactory.CreateInputField(inputHolder); var input = inputObj.GetComponent <InputField>(); input.characterValidation = InputField.CharacterValidation.Decimal; var inputLayout = inputObj.AddComponent <LayoutElement>(); inputLayout.minHeight = 25; inputLayout.flexibleHeight = 0; inputLayout.minWidth = 90; inputLayout.flexibleWidth = 50; editor.inputs[(int)vectorValue] = input; // apply button var applyBtnObj = UIFactory.CreateButton(rowObject); var applyBtn = applyBtnObj.GetComponent <Button>(); var applyText = applyBtnObj.GetComponentInChildren <Text>(); applyText.text = "Apply"; applyText.fontSize = 14; var applyLayout = applyBtnObj.AddComponent <LayoutElement>(); applyLayout.minWidth = 60; applyLayout.minHeight = 25; applyBtn.onClick.AddListener(() => { OnVectorControlInputApplied(type, vectorValue); }); // Slider var sliderObj = UIFactory.CreateSlider(rowObject); sliderObj.transform.Find("Fill Area").gameObject.SetActive(false); var sliderLayout = sliderObj.AddComponent <LayoutElement>(); sliderLayout.minHeight = 20; sliderLayout.flexibleHeight = 0; sliderLayout.minWidth = 200; sliderLayout.flexibleWidth = 9000; var slider = sliderObj.GetComponent <Slider>(); var sliderColors = slider.colors; sliderColors.normalColor = new Color(0.65f, 0.65f, 0.65f); slider.colors = sliderColors; slider.minValue = -2; slider.maxValue = 2; slider.value = 0; slider.onValueChanged.AddListener((float val) => { OnSliderControlChanged(val, slider, type, vectorValue); }); editor.sliders[(int)vectorValue] = slider; return(rowObject); }
public void FadeToLevel(SceneInfo info, int enterNo, VectorValue position) { position.value = info.enterPoints[enterNo]; sceneNo = info.number; anim.SetTrigger("Fade"); }
public static void SaveData(VectorValue player, Vector2 playerPosition, Vector2Value camera, Vector2 cameraMinPosition, Vector2 cameraMaxPosition) { player.initialValue = playerPosition; camera.minValue = cameraMinPosition; camera.maxValue = cameraMaxPosition; }