SceneNode CreatePoint(Vector3 loc) { var canvas = new SceneNode(); canvas.GetTransform.Position = loc; var textboxCanvas = canvas.AddComponent <Canvas>(); var root = new UIElement(); textboxCanvas.Add2Root(root); root.AddComponent <RawImage>(); var text = (TextBox)root.AddComponent <TextBox>(); var rect = root.GetTransform; rect.anchorMax = new Vector2(0, 0); rect.anchorMin = new Vector2(0, 0); rect.offsetMin = new Vector2(-50, -50); rect.offsetMax = new Vector2(50, 50); text.SetText("T"); text.textCanvas.colour = Vector3.Zero; text.textCanvas.alignVertical = TextAlignVertical.Center; text.textCanvas.alignHorizontal = TextAlignHorizontal.Center; textboxCanvas.Mode = Canvas.RenderMode.WorldSpace; textboxCanvas.Canvas2WorldScale = 0.0025f; return(canvas); }
void PrepareSpeech() { var reader = System.IO.File.ReadLines(@"Assets\Sound\13\voice_text_13.txt"); foreach (var line in reader) { var parts = line.Split(','); dialogData.Add(int.Parse(parts[0]), new Tuple <string, int, int>(parts[1].Replace("<br>", "\n"), int.Parse(parts[2]), int.Parse(parts[3]))); } textBubbleCanvas = new SceneNode(); textBubbleCanvas.GetTransform.Position = new Vector3(0, 1.8f, 0); textBubbleCanvas.SetParent(Node); var textboxCanvas = textBubbleCanvas.AddComponent <Canvas>(); var root = new UIElement(); textboxCanvas.Add2Root(root); root.AddComponent <RawImage>(); textBubble = (TextBox)root.AddComponent <TextBox>(); var rect = root.GetTransform; rect.anchorMax = new Vector2(0, 0); rect.anchorMin = new Vector2(0, 0); rect.offsetMin = new Vector2(-100, -30); rect.offsetMax = new Vector2(100, 30); textBubble.SetText(""); textBubble.textCanvas.colour = Vector3.Zero; textBubble.textCanvas.alignVertical = TextAlignVertical.Center; textBubble.textCanvas.alignHorizontal = TextAlignHorizontal.Center; textBubble.textCanvas.Scale = 0.5f; textboxCanvas.Mode = Canvas.RenderMode.WorldSpace; textboxCanvas.Canvas2WorldScale = 0.0025f; }
public static UIElement GetButton() { var el = new UIElement(); el.AddComponent <RawImage>(); return(el); }
public ButtonPrefab(string text = "") { ui = new UIElement(); ui.GetTransform.anchorMax = new Vector2(1f, 1f); ui.GetTransform.anchorMin = new Vector2(0f, 1f); ui.GetTransform.offsetMax = new Vector2(0, 0); ui.GetTransform.offsetMin = new Vector2(0, 0); component = (ButtonComponent)ui.AddComponent <ButtonComponent>(); var label = (TextBox)ui.AddComponent <TextBox>(); label.textCanvas.colour = new Vector3(1, 0, 0); label.textCanvas.alignHorizontal = TextAlignHorizontal.Center; label.textCanvas.alignVertical = TextAlignVertical.Center; label.SetText(text); label.textCanvas.Scale = 0.5f; }
public PropertyCtrl(SceneObject parent, PropertyInfo pi, Object source) { _propertyInfo = pi; _source = source; _name = SceneObject.Instantiate <UIElement>(parent); _name.RectTransform.Alignment = Alignment.TopLeft; _name.RectTransform.ClampMode = ClampMode.Full; _nameText = _name.AddComponent <Text> (); _nameText.Height = 15; _nameText.Alignment = Alignment.TopLeft; var t = _propertyInfo.PropertyType; if (t == typeof(bool)) { var value = SceneObject.Instantiate <CheckBox> (parent); Value = value; value.RectTransform.Alignment = Alignment.TopRight; value.Ctrl.IsChecked = (bool)_propertyInfo.GetValue(source, null); value.Ctrl.CheckedChanged += (c) => _propertyInfo.SetValue(_source, c, null); } else if (t.IsEnum) { var value = SceneObject.Instantiate <ComboBox> (parent); Value = value; value.Ctrl.Items = Enum.GetValues(t).OfType <object>().OrderBy(x => x.ToString()).ToList(); value.Ctrl.SelectedItem = _propertyInfo.GetValue(source, null); value.Ctrl.SelectedItemChanged += (item) => _propertyInfo.SetValue(_source, Enum.Parse(t, item.ToString()), null); } else { var value = SceneObject.Instantiate <TextInput> (parent); Value = value; var val = _propertyInfo.GetValue(source, null); value.Text.Content = val != null?val.ToString() : "NULL"; value.Ctrl.OnSubmit += (s, e) => ProcessSubmit(e); } Value.RectTransform.ClampMode = ClampMode.Full; }
public override void OnAwake() { base.OnAwake(); RectTransform.LayoutChanged += OnLayoutChanged; // Create parent container RectTransform.Size = new Point(170f, (Parent as UIElement).RectTransform.Height); Background.SliceType = SliceType.ThreeHorizontal; // container.Background.Source = ResourceManager.ImageFromFile(alignment == Alignment.Left ? AssetLibrary.UI.HeaderSlantedLeft : AssetLibrary.UI.HeaderSlantedRight); // Create inner container content = SceneObject.Instantiate <UIElement>(this); content.RectTransform.Size = new Point(RectTransform.Width - 60f, RectTransform.Height - 10f); // Properties that appear on either the left or right Properties = SceneObject.Instantiate <UIElement>(content); Properties.RectTransform.Size = new Point(content.RectTransform.Width, content.RectTransform.Height); PropertyName = Properties.AddComponent <Text>(); PropertyName.ApplyStyle(AssetLibrary.TextStyles.HudProperty); PropertyLabel = Properties.AddComponent <Text>(); PropertyLabel.ApplyStyle(AssetLibrary.TextStyles.HudValue); // Icon iconContainer = SceneObject.Instantiate <UIElement>(content); iconContainer.RectTransform.Size = new Point(20f, 20f); icon = iconContainer.AddComponent <Image>(); // Set default values PropertyName.Content = "LABEL"; PropertyLabel.Content = "0000"; }
public EasyRawImage(UnityEngine.Object image, Vector2 position) : base(position) { UIImageComponent = UIElement.AddComponent(typeof(RawImage)) as RawImage; //some code... }
private void InitUiImageComponent() { UIImageComponent = UIElement.AddComponent(typeof(RawImage)) as RawImage; }
void Awake() { var canvas = Node.AddComponent <Canvas>(); canvas.Mode = Canvas.RenderMode.Overlay; var ui0 = new UIElement(); ui0.GetTransform.anchorMax = new Vector2(0f, 1f); ui0.GetTransform.anchorMin = new Vector2(0f, 1f); ui0.GetTransform.offsetMax = new Vector2(400, 0); ui0.GetTransform.offsetMin = new Vector2(0, -400); canvas.Add2Root(ui0); var ui7 = new UIElement(); ui7.GetTransform.anchorMax = new Vector2(0f, 1f); ui7.GetTransform.anchorMin = new Vector2(0f, 1f); ui7.GetTransform.offsetMax = new Vector2(170, -40); ui7.GetTransform.offsetMin = new Vector2(20, -180); ui7.SetParent(ui0); var mask = (UIMaskComponent)ui7.AddComponent <UIMaskComponent>(); //scrollbox test var ui = new UIElement(); ui.GetTransform.anchorMax = new Vector2(0f, 1f); ui.GetTransform.anchorMin = new Vector2(0f, 1f); ui.GetTransform.offsetMax = new Vector2(130, 0); ui.GetTransform.offsetMin = new Vector2(0, -200); ui.SetParent(ui7); var scrollBox = (ScrollBoxComponent)ui.AddComponent <ScrollBoxComponent>(); scrollBox.Mask = mask; scrollBox.ScrollDirection = ScrollMode.Vertical; scrollBox.color.W = 0.3f; //scrollbar var scrollBar = (ScrollBarComponent)ui7.AddComponent <ScrollBarComponent>(); scrollBar.SetScrollBox(scrollBox); /* * var btn2 = new Toys.UserInterface.ButtonPrefab("path"); * var btnTrtans2 = btn2.GetTransform; * btnTrtans2.anchorMax = new Vector2(1f, 1f); * btnTrtans2.anchorMin = new Vector2(0f, 1f); * btnTrtans2.offsetMax = new Vector2(0, -0); * btnTrtans2.offsetMin = new Vector2(0, -25); * btn2.SetAction(() => { cc?.SetDestination(CoreEngine.GetCamera.Node.GetTransform.GlobalTransform.ExtractTranslation()); }); * btn2.SetParent(ui); */ var btn3 = new Toys.UserInterface.ButtonPrefab("Ко мне"); var btnTrtans3 = btn3.GetTransform; btnTrtans3.anchorMax = new Vector2(1f, 1f); btnTrtans3.anchorMin = new Vector2(0f, 1f); btnTrtans3.offsetMax = new Vector2(0, -0); btnTrtans3.offsetMin = new Vector2(0, -25); btn3.SetAction(() => { cc?.AnimController.SetBool("sit", false); cc?.GoImmedeatly(CoreEngine.GetCamera.Node.GetTransform.GlobalTransform.ExtractTranslation(), Vector3.Zero, null, true); }); btn3.SetParent(ui); /* * var ui3 = new UIElement(); * ui3.GetTransform.anchorMax = new Vector2(1f, 1f); * ui3.GetTransform.anchorMin = new Vector2(0f, 1f); * ui3.GetTransform.offsetMax = new Vector2(0, -60); * ui3.GetTransform.offsetMin = new Vector2(0, -80); * var slider = (SliderCompoent)ui3.AddComponent<SliderCompoent>(); * ui3.SetParent(ui); * * var ui4 = new UIElement(); * ui4.GetTransform.anchorMax = new Vector2(1f, 1f); * ui4.GetTransform.anchorMin = new Vector2(0f, 1f); * ui4.GetTransform.offsetMax = new Vector2(0, -85); * ui4.GetTransform.offsetMin = new Vector2(0, -110); * ui4.SetParent(ui); * var checkbox = (CheckboxComponent)ui4.AddComponent<CheckboxComponent>(); * var butLabel4 = (TextBox)ui4.AddComponent<TextBox>(); * butLabel4.textCanvas.colour = new Vector3(1, 0, 0); * butLabel4.textCanvas.alignHorizontal = TextAlignHorizontal.Left; * butLabel4.textCanvas.alignVertical = TextAlignVertical.Center; * butLabel4.textCanvas.colour = Vector3.Zero; * butLabel4.textCanvas.Scale = 0.7f; * butLabel4.SetText("checkbox"); * * var ui5 = new UIElement(); * ui5.GetTransform.anchorMax = new Vector2(1f, 1f); * ui5.GetTransform.anchorMin = new Vector2(0f, 1f); * ui5.GetTransform.offsetMax = new Vector2(0, -115); * ui5.GetTransform.offsetMin = new Vector2(0, -140); * ui5.SetParent(ui); * var input = (TextInputComponent)ui5.AddComponent<TextInputComponent>(); */ //debug textures /* * var canvas1 = (Canvas)Node.AddComponent<Canvas>(); * var ui10 = new UIElement(); * ui10.GetTransform.anchorMax = new Vector2(0f, 1f); * ui10.GetTransform.anchorMin = new Vector2(0f, 1f); * ui10.GetTransform.offsetMax = new Vector2(400, 100); * ui10.GetTransform.offsetMin = new Vector2(100, 400); * canvas1.Root = ui10; * * var img = ui10.AddComponent<RawImage>(); * img.Material.SetTexture(Node.scene.GetLight.shadowMap, TextureType.Diffuse); */ /* * var msd = (Animator)Node.GetComponent<Animator>(); * if (msd != null) * bc = msd.BoneController; */ //MadePath(31); //slider1.OnValueChanged = () => { active = false; physics.SetGravity(new Vector3(0, -10, 0)); }; /* * * //save test * var save = new SaveSystem(); * * var btn = new Toys.UserInterface.ButtonPrefab("Save"); * var btnTrtans = btn.GetTransform; * btnTrtans.anchorMax = new Vector2(1f, 1f); * btnTrtans.anchorMin = new Vector2(0f, 1f); * btnTrtans.offsetMax = new Vector2(0, -60); * btnTrtans.offsetMin = new Vector2(0, -85); * btn.SetAction(() => { save.SaveGame(); }); * btn.SetParent(ui); * * var btn1 = new Toys.UserInterface.ButtonPrefab("Load"); * var btnTrtans1 = btn1.GetTransform; * btnTrtans1.anchorMax = new Vector2(1f, 1f); * btnTrtans1.anchorMin = new Vector2(0f, 1f); * btnTrtans1.offsetMax = new Vector2(0, -90); * btnTrtans1.offsetMin = new Vector2(0, -115); * btn1.SetAction(() => { save.LoadGame(); }); * btn1.SetParent(ui); */ var btn6 = new Toys.UserInterface.ButtonPrefab("Место"); var btnTrtans6 = btn6.GetTransform; btnTrtans6.anchorMax = new Vector2(1f, 1f); btnTrtans6.anchorMin = new Vector2(0f, 1f); btnTrtans6.offsetMax = new Vector2(0, -30); btnTrtans6.offsetMin = new Vector2(0, -55); btn6.SetAction(GoSit); btn6.SetParent(ui); var ai = cc.Node.GetComponent <NpcAI>(); var btn7 = new Toys.UserInterface.ButtonPrefab("Голос"); var btnTrtans7 = btn7.GetTransform; btnTrtans7.anchorMax = new Vector2(1f, 1f); btnTrtans7.anchorMin = new Vector2(0f, 1f); btnTrtans7.offsetMax = new Vector2(0, -60); btnTrtans7.offsetMin = new Vector2(0, -85); btn7.SetAction(() => { ai?.PlayRandomVoice(); }); btn7.SetParent(ui); }