public override bool moveElementDown(DataControl dataControl) { bool elementMoved = false; int elementIndex = itemsList.IndexOf((Item)dataControl.getContent()); if (elementIndex < itemsList.Count - 1) { Item e = itemsList[elementIndex]; ItemDataControl c = itemsDataControlList[elementIndex]; itemsList.RemoveAt(elementIndex); itemsDataControlList.RemoveAt(elementIndex); itemsList.Insert(elementIndex + 1, e); itemsDataControlList.Insert(elementIndex + 1, c); controller.DataModified(); elementMoved = true; } return(elementMoved); }
protected override void DrawInspector() { workingItem = Target as ItemDataControl ?? Controller.Instance.SelectedChapterDataControl.getItemsList().getItems()[GameRources.GetInstance().selectedItemIndex]; // Appearance table appearanceEditor.Data = workingItem; appearanceEditor.OnInspectorGUI(); EditorGUI.BeginChangeCheck(); string previousValue = image.Path = workingItem.getPreviewImage(); image.DoLayout(GUILayout.ExpandWidth(true)); if (previousValue != image.Path) { workingItem.setPreviewImage(image.Path); } previousValue = icon.Path = workingItem.getIconImage(); icon.DoLayout(GUILayout.ExpandWidth(true)); if (previousValue != icon.Path) { workingItem.setIconImage(icon.Path); } previousValue = image_over.Path = workingItem.getMouseOverImage(); image_over.DoLayout(GUILayout.ExpandWidth(true)); if (previousValue != image_over.Path) { workingItem.setMouseOverImage(image_over.Path); } if (EditorGUI.EndChangeCheck()) { RefreshResources(workingItem); } }
public override void Draw(int aID) { workingItem = Target as ItemDataControl ?? Controller.Instance.SelectedChapterDataControl.getItemsList().getItems()[GameRources.GetInstance().selectedItemIndex]; // ------------- // Documentation // ------------- GUILayout.Label(TC.get("Item.Documentation")); EditorGUI.BeginChangeCheck(); var fullItemDescription = GUILayout.TextArea(workingItem.getDocumentation() ?? string.Empty); if (EditorGUI.EndChangeCheck()) { workingItem.setDocumentation(fullItemDescription); } // ------------- // Descriptions // ------------- descriptionsEditor.Descriptions = workingItem.getDescriptionController(); descriptionsEditor.OnInspectorGUI(); GUILayout.Space(20); // ------------- // Drag & drop // ------------- EditorGUILayout.LabelField(TC.get("Item.ReturnsWhenDragged.Title")); EditorGUI.BeginChangeCheck(); var dragdropToogle = EditorGUILayout.Toggle(dragdropLabel, workingItem.isReturnsWhenDragged()); if (EditorGUI.EndChangeCheck()) { workingItem.setReturnsWhenDragged(dragdropToogle); } GUILayout.Space(20); // ------------- // Behaviour // ------------- EditorGUI.BeginChangeCheck(); var selectedBehaviourType = EditorGUILayout.Popup(TC.get("Behaviour"), (int)workingItem.getBehaviour(), behaviourTypes.Select(bt => TC.get(bt)).ToArray()); Item.BehaviourType type = (selectedBehaviourType == 0 ? Item.BehaviourType.NORMAL : Item.BehaviourType.FIRST_ACTION); if (EditorGUI.EndChangeCheck()) { workingItem.setBehaviour(type); } EditorGUILayout.HelpBox(TC.get(behaviourTypesDescription[selectedBehaviourType]), MessageType.Info); GUILayout.Space(20); // ------------- // Transition time // ------------- EditorGUI.BeginChangeCheck(); var transitionTime = Math.Max(EditorGUILayout.LongField(transitionLabel, workingItem.getResourcesTransitionTime()), 0); if (EditorGUI.EndChangeCheck()) { workingItem.setResourcesTransitionTime(transitionTime); } }