public void copyToText(Text target) { GameObject gameObject = new GameObject(); Text t = gameObject.AddComponent <Text>(); t.alignByGeometry = alignByGeometry; t.alignment = alignment; t.font = UnityEditor.AssetDatabase.LoadAssetAtPath <Font>(fontPath); if (t.font == null) { Debug.Log("Font not found"); //set default font //UnityEditor.AssetDatabase.LoadAssetAtPath<Font>(GameManager.defaultFontPath); //Might not need since prefab will have default font } t.fontSize = fontSize; t.fontStyle = fontStyle; t.lineSpacing = lineSpacing; t.resizeTextForBestFit = resizeTextForBestFit; t.resizeTextMaxSize = resizeTextMaxSize; t.resizeTextMinSize = resizeTextMinSize; t.supportRichText = supportRichText; t.text = text; XMLSerializationManager.copyComponent(t, target); GameObject.Destroy(gameObject); }
void Start() { currentStory = XMLSerializationManager.loadStory("Assets/StreamingAssets/XML/intro_data.xml", canvas); storyEditorToolbar = GameObject.Instantiate(AssetDatabase.LoadAssetAtPath <GameObject>("Assets/Prefabs/StoryEditor/StoryEditorToolbar.prefab"), canvas.transform); pageEditorToolbar = GameObject.Instantiate(AssetDatabase.LoadAssetAtPath <GameObject>("Assets/Prefabs/PageEditor/PageEditorToolbar.prefab"), canvas.transform); currentStory.currentPage = currentStory.getPage(currentStory.firstPageName); changeMode(Mode.Play); }
public BackgroundData(GameObject background) { name = background.name; rtd = new RectTransformData(background.GetComponent <RectTransform>()); image = new ImageData(background.GetComponent <Image>()); //Fill the connection arrays PageElementEventTrigger peet = background.GetComponent <PageElementEventTrigger>(); connections = XMLSerializationManager.setElementIndexes(peet); }
public ButtonData(GameObject button) { name = button.name; rtd = new RectTransformData(button.GetComponent <RectTransform>()); image = new ImageData(button.GetComponent <Image>()); etd = new EventTriggerData(button.GetComponent <EventTrigger>()); text = new TextData(button.GetComponentInChildren <Text>()); PageElementEventTrigger peet = button.GetComponent <PageElementEventTrigger>(); connections = XMLSerializationManager.setElementIndexes(peet); }
public void copyToScrollbar(Scrollbar target) { GameObject gameObject = new GameObject(); Scrollbar sb = gameObject.AddComponent <Scrollbar>(); sb.direction = direction; //sb.handleRect = handleRect.toRectTransform(null); //Needs to get the rect transform of the Handle after its instantiated sb.numberOfSteps = numberOfSteps; sb.onValueChanged = onValueChanged; sb.size = size; sb.value = value; XMLSerializationManager.copyComponent(sb, target); GameObject.Destroy(gameObject); }
//Creates a rect transform using the fields in this RectTransformData and applies it to a parent. While not necessary to specify a parent this //is to keep a consistent style with the other components, since Unity gui elements need a parent to initialize public void copyToRectTransform(RectTransform target) { GameObject gameObject = new GameObject(); RectTransform rc = gameObject.AddComponent <RectTransform>(); rc.anchoredPosition = anchoredPosition; rc.anchorMax = anchorMax; rc.anchorMin = anchorMin; rc.offsetMax = offsetMax; rc.offsetMin = offsetMin; rc.pivot = pivot; rc.sizeDelta = sizeDelta; XMLSerializationManager.copyComponent(rc, target); GameObject.Destroy(gameObject); }
public void copyToRawImage(RawImage target) { GameObject gameObject = new GameObject(); RawImage image = gameObject.AddComponent <RawImage>(); image.texture = (Texture)UnityEditor.AssetDatabase.LoadAssetAtPath(sourceImagePath, typeof(Texture)); if (image.texture == null) { Debug.Log("Image file not found at: " + sourceImagePath); //set a default picture in its place } image.uvRect = uvRect; XMLSerializationManager.copyComponent(image, target); GameObject.Destroy(gameObject); }
//jumps to the mode and page specified public void changeMode(Mode newMode, Page page) { //Save any changes to previous story XMLSerializationManager.saveStory(currentStory); try { currentStory.setCurrentPage(page.getName()); changeMode(newMode); } catch (KeyNotFoundException) { //if page is not in current story, then change the current story Debug.Log("The story you are changing to is not in the same story that was previously active. Changing currentStory"); currentStory = page.storyRef; currentStory.setCurrentPage(page.getName()); changeMode(newMode); } }
public new void OnPointerClick(PointerEventData data) { XMLSerializationManager.saveStory(gm.currentStory); switch (toolbarAction) { case ToolbarAction.ReturnToEditor: gm.changeMode(GameManager.Mode.EditStory); break; case ToolbarAction.AddPage: Page page = new Page("New Page", gm.currentStory); page.buildDefaultPage(); gm.currentStory.addPage(page); FindObjectOfType <StoryEditorManager>().addPageGraphic(page); break; } }
public ScrollAreaData(GameObject scrollArea) { name = scrollArea.name; //SA fields rtd_SA = new RectTransformData(scrollArea.GetComponent <RectTransform>()); image_SA = new ImageData(scrollArea.GetComponent <Image>()); //TB fields GameObject textBox = scrollArea.transform.GetChild(0).gameObject; rtd_TB = new RectTransformData(textBox.GetComponent <RectTransform>()); srd_TB = new ScrollRectData(textBox.GetComponent <ScrollRect>()); //SB fields GameObject scrollbar = textBox.transform.GetChild(0).gameObject; rtd_SB = new RectTransformData(scrollbar.GetComponent <RectTransform>()); image_SB = new ImageData(scrollbar.GetComponent <Image>()); sb_SB = new ScrollbarData(scrollbar.GetComponent <Scrollbar>()); //SlA fields GameObject slidingArea = scrollbar.transform.GetChild(0).gameObject; rtd_SlA = new RectTransformData(slidingArea.GetComponent <RectTransform>()); //Handle fields GameObject handle = slidingArea.transform.GetChild(0).gameObject; rtd_H = new RectTransformData(handle.GetComponent <RectTransform>()); image_H = new ImageData(handle.GetComponent <Image>()); //TextFields GameObject text = textBox.transform.GetChild(1).gameObject; rtd_T = new RectTransformData(text.GetComponent <RectTransform>()); text_T = new TextData(text.GetComponent <Text>()); //EventTrigger fields PageElementEventTrigger peet = scrollArea.GetComponent <PageElementEventTrigger>(); connections = XMLSerializationManager.setElementIndexes(peet); }
public void copyToScrollRect(ScrollRect target) //Scroll rect stuff is all kinds of screwed because it needs references to the other gameobjects { GameObject gameObject = new GameObject(); ScrollRect rect = gameObject.AddComponent <ScrollRect>(); //rect.normalizedPosition = normalizedPosition; rect.decelerationRate = decelerationRate; rect.elasticity = elasticity; rect.inertia = inertia; rect.movementType = movementType; rect.horizontal = false; rect.scrollSensitivity = scrollSensitivity; rect.velocity = velocity; rect.vertical = vertical; // rect.verticalNormalizedPosition = verticalNormalizedPosition; rect.verticalScrollbarSpacing = verticalScrollbarSpacing; rect.verticalScrollbarVisibility = verticalScrollbarVisibility; XMLSerializationManager.copyComponent(rect, target); GameObject.Destroy(gameObject); }
public void buildStoryEditorGraphics(Story story) { //Remove any previous editor graphics foreach (GameObject pageNodeGraphic in pageGraphics) { GameObject.Destroy(pageNodeGraphic); } pageGraphics.Clear(); foreach (BezierCurve4PointRenderer curve in FindObjectsOfType <BezierCurve4PointRenderer>()) { GameObject.Destroy(curve.gameObject); } foreach (Page page in gm.currentStory.getPages()) { addPageGraphic(page); } //New graphics have been made, they need to be connected XMLSerializationManager.makeActionConnections(story); foreach (GameObject pageGraphic in pageGraphics) { pageGraphic.GetComponent <PageNodeGraphicManager>().drawConnectionCurves(); } }
public void copyToImage(Image target) { GameObject gameObject = new GameObject(); Image image = gameObject.AddComponent <Image>(); image.sprite = (Sprite)UnityEditor.AssetDatabase.LoadAssetAtPath(sourceImagePath, typeof(Sprite)); if (image.sprite == null) { Debug.LogWarning("Image file not found at: " + sourceImagePath); //set a default picture in its place } image.alphaHitTestMinimumThreshold = alphaHitTestMinimumThreshold; image.fillAmount = fillAmount; image.fillCenter = fillCenter; image.fillClockwise = fillClockwise; image.fillMethod = fillMethod; image.fillOrigin = fillOrigin; image.preserveAspect = preserveAspect; image.type = type; image.color = color; XMLSerializationManager.copyComponent(image, target); GameObject.Destroy(gameObject); }
public override void OnInspectorGUI() { base.OnInspectorGUI(); GameManager gm = (GameManager)target; GUILayout.Label("CurrentStory: " + gm.currentStory.name); GUILayout.Label("CurrentPage: " + gm.currentStory.currentPage.name); GUILayout.Label("Story Management"); if (GUILayout.Button("Toggle Current page visibility")) { Debug.Log("toggling current page visibility. CurrentPage.isVisible = " + gm.currentStory.getCurrentPage().isVisible); if (gm.currentStory.getCurrentPage().isVisible == false) { gm.currentStory.getCurrentPage().setVisible(true); } else { gm.currentStory.getCurrentPage().setVisible(false); } } if (GUILayout.Button("BuildIntro")) { Debug.Log("Building intro story"); gm.currentStory = gm.buildIntro(); } if (GUILayout.Button("Make currentPage first page")) { gm.currentStory.firstPageName = gm.currentStory.currentPage.name; } if (GUILayout.Button("Pages in story")) { string output = "Page names in currentstory \n"; foreach (Page page in gm.currentStory.getPages()) { output += page.getName() + "\n"; } Debug.Log(output); } GUILayout.Label("XML Management"); if (GUILayout.Button("Load IntroStory from XML")) { gm.currentStory = XMLSerializationManager.loadStory("Assets/StreamingAssets/XML/intro_data.xml", gm.canvas); gm.currentStory.setCurrentPage("introPage1"); } if (GUILayout.Button("Save Story to XML")) { XMLSerializationManager.saveStory(gm.currentStory); } GUILayout.Label("StoryEditor Management"); if (GUILayout.Button("Build PageNodeGraphics from testStory")) { gm.currentStory = XMLSerializationManager.loadStory("Assets/StreamingAssets/XML/intro_data.xml", gm.canvas); gm.currentStory.setCurrentPage("introPage1"); gm.currentStory.currentPage.setVisible(false); FindObjectOfType <StoryEditorManager>().buildStoryEditorGraphics(gm.currentStory); } if (GUILayout.Button("Add Page")) { Page page = new Page("New Page", gm.currentStory); page.buildDefaultPage(); gm.currentStory.addPage(page); FindObjectOfType <StoryEditorManager>().addPageGraphic(page); } if (GUILayout.Button("Edit Current Page")) { gm.changeMode(GameManager.Mode.EditPage, gm.currentStory.currentPage); } }