public void OnWindowOpened(UIWindowFrame windowFrame) { if (windowFrame.windowContent is not AttractionInfoWindow window) { return; } var button = Object.Instantiate(ScriptableSingleton <UIAssetManager> .Instance.titlebarRenameButtonGO); foreach (Transform child in button.transform) { Destroy(child.gameObject); } var text = new GameObject().AddComponent <Text>(); text.transform.parent = button.transform; text.text = "CoasterCam"; windowFrame.addTitlebarButtonRight(button.gameObject); windowFrame.addTitlebarButtonRight(button.gameObject); button.onClick.AddListener(() => { var getObjectMethod = typeof(AttractionInfoWindow).GetMethod( "getObject", BindingFlags.Instance | BindingFlags.NonPublic); var obj = getObjectMethod.Invoke(window, new object[] { }); var attr = obj as Attraction; if (TryRidingAttraction(attr)) { windowFrame.close(); } }); }
public void OnWindowOpened(UIWindowFrame windowFrame) { go.GetComponent <CoasterCam>().OnWindowOpened(windowFrame); }