public void SetIdValue(int id, PrefabCategory cat) { _characterSelection.SetValues(id, id, cat); if (OnCharacterUpdated != null) { OnCharacterUpdated(); } }
static void PrefabSelectionSpecificUI(float width) { EditorGUILayout.Space(); EditorGUILayout.BeginHorizontal(); switch (clickAction) { case ClickAction.SetAsCurrent: { GUILayout.FlexibleSpace(); if (PrefabManager.currentPrefab != null) { Texture2D texture; SpriteManager.spriteTextures.TryGetValue(PrefabManager.currentPrefab.spriteName, out texture); GUILayout.Button(texture, GUILayout.Width(texture.width + buttonPadding), GUILayout.Height(texture.height + buttonPadding)); } GUILayout.FlexibleSpace(); break; } case ClickAction.ChangeSetId: { GUILayout.Label("Set ID: "); nextSetId = EditorGUILayout.IntField(nextSetId); if (GUILayout.Button("Get Next")) { nextSetId = PrefabManager.prefabs.Max(p => p.Value.setId) + 1; } break; } case ClickAction.ChangeType: { nextPrefabType = (PrefabType)EditorGUILayout.EnumPopup("Prefab Type ", nextPrefabType); break; } case ClickAction.ChangeCategory: { nextPrefabCategory = (PrefabCategory)EditorGUILayout.EnumPopup("Prefab Category ", nextPrefabCategory); break; } case ClickAction.ChangeColor: { nextPrefabColor = (PrefabColor)EditorGUILayout.EnumPopup("Prefab Color ", nextPrefabColor); break; } } EditorGUILayout.EndHorizontal(); }
public Prefabinfo GetPrefabByProbability(float range, PrefabCategory category) { //Get only one data by PrefabCategory var distinctValues = Prefabs.FindAll(x => x.category == category); range /= distinctValues.Count(); var probs = Prefabs.FindAll(x => x.category == category && x.probability >= range); var rnd = new System.Random(); return(probs[rnd.Next(0, probs.Count)]); }
public void SetValues(string uid, int id, int prefabId, PrefabCategory prefabCategory) { if (Data.Exists(x => x.uid == uid)) { Data.Find(x => x.uid == uid).id = id; Data.Find(x => x.uid == uid).prefabId = prefabId; Data.Find(x => x.uid == uid).prefabCategory = prefabCategory; if (OnValueUpdated != null) { OnValueUpdated(Data.Find(x => x.uid == uid)); } return; } Debug.LogError("Specifield id not exists"); }
static void PrefabViewFilterUI(float width) { EditorGUILayout.BeginHorizontal(); GUILayout.Label("Type:", GUILayout.Width(65f)); typeFilter = (PrefabType)EditorGUILayout.EnumPopup(typeFilter, GUILayout.Width(90f)); if (GUILayout.Button("Reset", GUILayout.Width(45f))) { categoryFilter = PrefabCategory.Any; } EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); GUILayout.Label("Category:", GUILayout.Width(65f)); categoryFilter = (PrefabCategory)EditorGUILayout.EnumPopup(categoryFilter, GUILayout.Width(90f)); if (GUILayout.Button("Reset", GUILayout.Width(45f))) { categoryFilter = PrefabCategory.Any; } EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); GUILayout.Label("Color:", GUILayout.Width(65f)); colorFilter = (PrefabColor)EditorGUILayout.EnumPopup(colorFilter, GUILayout.Width(90f)); if (GUILayout.Button("Reset", GUILayout.Width(45f))) { colorFilter = PrefabColor.Any; } EditorGUILayout.EndHorizontal(); }
public void OnGUI() { if (selectionList == null || selectionList.Count <= 0) { this.Close(); } GUILayout.Label("Sprites in selection: " + selectionList.Count()); EditorGUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); if (GUILayout.Button("<", GUILayout.Width(30f))) { selectionIndex--; } if (GUILayout.Button(">", GUILayout.Width(30f))) { selectionIndex++; } GUILayout.FlexibleSpace(); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); selectionNode = selectionList[Mathf.Abs(selectionIndex) % selectionList.Count]; GUILayout.Button(selectionNode.Value, GUILayout.Width(selectionNode.Value.width), GUILayout.Height(selectionNode.Value.height)); GUILayout.FlexibleSpace(); EditorGUILayout.EndHorizontal(); EditorGUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); GUILayout.Label(selectionNode.Key); GUILayout.FlexibleSpace(); EditorGUILayout.EndHorizontal(); EditorGUILayout.Space(); EditorGUILayout.BeginHorizontal(); nextSetId = EditorGUILayout.IntField("Set ID: ", nextSetId); if (GUILayout.Button("Get Next ID", GUILayout.Width(85f))) { nextSetId = GetNextSetID(); } EditorGUILayout.EndHorizontal(); nextPrefabType = (PrefabType)EditorGUILayout.EnumPopup("Type: ", nextPrefabType); nextPrefabCategory = (PrefabCategory)EditorGUILayout.EnumPopup("Prefab Category: ", nextPrefabCategory); nextPrefabColor = (PrefabColor)EditorGUILayout.EnumPopup("Prefab Color: ", nextPrefabColor); hasBoxCollider = EditorGUILayout.Toggle("BoxCollider2D", hasBoxCollider); isTrigger = EditorGUILayout.Toggle("isTrigger", isTrigger); EditorGUILayout.Space(); EditorGUILayout.Space(); if (hasError) { GUIStyle style = new GUIStyle(EditorStyles.label); style.normal.textColor = Color.red; foreach (var error in errorText) { EditorGUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); GUILayout.Label(error, style); GUILayout.FlexibleSpace(); EditorGUILayout.EndHorizontal(); } } if (hasCompleted) { EditorGUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); GUIStyle style = new GUIStyle(EditorStyles.label); style.normal.textColor = Color.blue; GUILayout.Label(completionText, style); GUILayout.FlexibleSpace(); EditorGUILayout.EndHorizontal(); } EditorGUILayout.BeginHorizontal(); GUILayout.FlexibleSpace(); if (GUILayout.Button("Make", GUILayout.Width(50f))) { Make(); } if (GUILayout.Button("Close", GUILayout.Width(50f))) { this.Close(); } EditorGUILayout.EndHorizontal(); }
public PrefabSet GetPrefabSet(PrefabCategory cat) => prefabs_[cat];
public Cities::PrefabInfo[] GetDefaultPrefabs(PrefabCategory cat) { var pset = GetPrefabSet(cat); return(pset.Infos.Values.Where(p => !p.m_isCustomContent).ToArray()); }